나는 클라이언트와 그의 프로젝트의 현재 관계Laravel에 BelongsTo 관계 실존
프로젝트 모델을
public function client()
{
return $this->belongsTo('Client', 'cid');
}
프로젝트 컨트롤러 이제 모든 것이 잘 작동, 나는 수 있어요
public function index() {
$projects = Project::with('client')->orderBy('pid', 'desc')->get();
$this->layout->content = View::make('projects.index')->with('projects', $projects);
}
프로젝트 뷰에서 클라이언트에 대한 모든 정보를 가져옵니다. 그러나 클라이언트 ID가 데이터베이스 (클라이언트 테이블에 있음)에 없으면 "비 객체 속성을 얻으려고합니다."라는 오류 메시지가 나타납니다. 이 오류가 발생하는 대신 빈 객체를 보낼 수 있기를 원합니다. 어디서부터 시작해야할지 모르겠다. 모델 자체 또는 컨트롤러에서 확인해야하나요? 아니면 뷰에 체크를 추가할까요? 클라이언트가 존재하지 않기 때문에이 경우
project.client.name
는 예외를 던져해야하지만 이름 속성에 액세스하려고 :
클라이언트에 :: 대신 ::를 사용하면 전체 프로젝트 행 (예 : 테이블에 프로젝트 표시)이 생략됩니다. 비어있는 연락처 나 찾을 수없는 경우 "알 수 없음"으로 프로젝트를 계속 표시하고 싶습니다. – NyseX