2016-09-07 2 views
0

다음 표가 있습니다. Laravel 협약을 따르지 않습니다.Laravel 일대 다 관계 쿼리 바인딩에 null이 표시됩니까?

public function helpdeskLogs() 
{ 
    return $this->belongsTo('Defsys\Modules\helpdesk\Models\HelpdeskLogs','helpdesk_logs_id'); 
} 

내가 수행하고 작업

HelpdeskLogs::with('helpdeskFiles') 
       ->select(DB::raw('helpdesk_logs.id AS helpdesk_logs_id,helpdesk_logs.description,helpdesk_logs.status ,helpdesk_logs.spent_time')) 
      ->where('helpdesk_logs.id', 13)->get(); 
0 다음 표

helpdesk_logs (table) 
id primary_key 

helpdesk_files (table) 
id primary_key 
helpdesk_logs_id - foreign_key 

모델

HelpdeskLogs.php

public function helpdeskFiles(){ 

     return $this->hasMany('Defsys\Modules\helpdesk\Models\HelpdeskFiles','helpdesk_logs_id','id'); 
    } 

HelpdeskFiles.php

기록에도 불구하고 helpdesk_files (helpdesk_lod_id 13)에 기록이 없습니다. 기록을 반환하지 않습니다. 바인딩 PARAMS는 null를 보여줍니다

나는 그것을 필요 결과 를 검색하는 데 사용할 수 있습니다 헬프 데스크 로그 테이블 아이디 번째 열에에서

1 => array:3 [▼ 
    "query" => "select * from `helpdesk_files` where `helpdesk_files`.`helpdesk_logs_id` in (?)" 
    "bindings" => array:1 [▼ 
     0 => null 
    ] 
    "time" => 0.17 
    ] 

답변

0

다음 표시 쿼리 디버깅 할 때 HelpdeskLogs::with('helpdeskFiles')->where('id', 13)->get();

+0

죄송 실제로이었다 오타 (복사하는 동안) 다른 열 helpdesk_id도 있습니다. helpdesk_files 테이블에 helpdesk_log_id 13이있는 레코드가 있습니다 –

+0

@ kamlesh.bar 질문에 올바른 코드를 게시 할 수 있습니까? 나는이 문제를 이해할 수 없다 .. :( – jaysingkar

+1

감사합니다 @ jaysingkar 문제가 해결되었습니다. 문제는 'helpdesk_logs.id와 함께 추가 ID'(helpdesk_logs.id)가없는 'select'문과 함께했습니다 helpdesk_logs_id –