2016-08-31 5 views
0

두 명의 테이블과 한 명의 사용자가 있습니다. 여기Laravel에서 ID로 사용자 이름을 보는 방법은 무엇입니까?

public function classroom() 
{ 
    return $this->hasMany('App\classroom'); 
} 

그리고 내 classroom's 모델은 다음과 같습니다 : 여기 내 user 모델입니다

public function user() 
{ 
    return $this->hasMany('App\User'); 
} 

사용자가 교실을 만들 때 다음 내가 교실 테이블 id, user_id, class_name, section에 저장합니다. 이미 블레이드 페이지에서 클래스 데이터를 봅니다. 하지만 교실 데이터를 만든 사용자 이름을 볼 수 없습니다. 내 view 페이지에서

@foreach($classrooms as $classroom) 
       <li><b>Class code--><i>{{$classroom->class_code}}</i></b></li> 
       <li><b>Subject--><i>{{$classroom->class_name}}</i></b></li> 
       <li><b>Section--><i>{{$classroom->section}}</i></b></li> 
       <li><b>created by--><i> ???? </i></b></li> 
      @endforeach 

controller

$classrooms=classroomModel::where('id',$id)->get(); 
$posts = Status::where('class_id' , $id)->orderBy('id', 'desc')->get(); 
return view::make('class',compact('posts','classrooms')); 

내가 올바른 코드 일 무슨 다음 교실 데이터를 생성하고 어디에서 변경해야 사용자 이름을 확인하려면? 컨트롤러에서

답변

0

:

$classrooms=classroomModel::where('id',$id)->with('user')->first(); 

보기에 :

$classrooms->user->name; 
+0

작동하지 않습니다. 이제 내 오류는 SQLSTATE [42S22]입니다 : 열을 찾을 수 없습니다 : 1054 'where 절'에서 알 수없는 열 'users.classroom_id'(SQL : select * from'users'에서'users'.classroom_id' in (47)) – Shuvo

+0

where 교실을 만든 사람에 대한 데이터를 저장합니까? 내가 네가 제대로 이해한다면 그 정보를 저장하지 않으니 까. –

+0

내 사용자 테이블에 기본 키 ID가 있습니다. 그리고 사용자 ID는 내 교실 테이블 이름 user_id에 넣습니다. 이제는 데이터 형식의 교실 테이블을 보여줍니다. 클래스 테이블에는 user_id 만 있지만 이름은 없습니다. 이름이 사용자 테이블에 있습니다. 그래서 어떻게 내보기 페이지에서 사용자 이름을 볼 수 있습니다. – Shuvo

관련 문제