如何在视图 (Laravel5) 中获取链接的 table 列值?
How to get the linked table column value in view (Laravel5)?
我是 laravel 的新手,有人可以帮忙吗?
表格结构
1) rooms
id |roomno |roomtype_id |luxurytype |status
2) roomtypes
id| code| description
车型代号
1) 房型模型
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class roomtype extends Model
{
public function rooms(){
return $this->hasMany('App\room');
}
}
2)房间模型
namespace App;
use Illuminate\Database\Eloquent\Model;
class room extends Model
{
public function roomtypes(){
return $this->belongsTo('App\roomtype');
}
}
控制器
public function index()
{
$roomtype = roomtype::all();
$rooms = room::all();
return view('home', array('roomtype'=>$roomtype , 'rooms'=>$rooms));
}
查看
@foreach ($rooms as $rooms)
<tr>
<td>{{ $rooms->roomno }}</td>
<td>{{ $rooms->luxurytype }}</td>
<td>{{ $rooms->roomtypes->description }}</td>
<td>{{ $rooms->status }}</td>
<td></td>
</tr>
@endforeach
错误
如果我使用这一行 {{ $rooms->roomtypes->description }}
然后我得到:
Trying to get property of non-object
(View: C:\xampp\htdocs\hms\resources\views\home.blade.php)
如何显示带有房型描述的房间?
像这样更改您的控制器文件
public function index()
{
$rooms = room::with('roomtypes')->get();
return view('home', array('rooms'=>$rooms));
}
现在在blade视图中按以下方式访问房型-:
@foreach ($rooms as $rooms)
<tr>
<td>{{ $rooms->roomno }}</td>
<td>{{ $rooms->luxurytype }}</td>
<td>{{ $rooms->roomtypes[0]->description }}</td>
<td>{{ $rooms->status }}</td>
<td></td>
</tr>
@endforeach
我是 laravel 的新手,有人可以帮忙吗?
表格结构
1) rooms
id |roomno |roomtype_id |luxurytype |status
2) roomtypes
id| code| description
车型代号
1) 房型模型
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class roomtype extends Model
{
public function rooms(){
return $this->hasMany('App\room');
}
}
2)房间模型
namespace App;
use Illuminate\Database\Eloquent\Model;
class room extends Model
{
public function roomtypes(){
return $this->belongsTo('App\roomtype');
}
}
控制器
public function index()
{
$roomtype = roomtype::all();
$rooms = room::all();
return view('home', array('roomtype'=>$roomtype , 'rooms'=>$rooms));
}
查看
@foreach ($rooms as $rooms)
<tr>
<td>{{ $rooms->roomno }}</td>
<td>{{ $rooms->luxurytype }}</td>
<td>{{ $rooms->roomtypes->description }}</td>
<td>{{ $rooms->status }}</td>
<td></td>
</tr>
@endforeach
错误
如果我使用这一行 {{ $rooms->roomtypes->description }}
然后我得到:
Trying to get property of non-object
(View: C:\xampp\htdocs\hms\resources\views\home.blade.php)
如何显示带有房型描述的房间?
像这样更改您的控制器文件
public function index()
{
$rooms = room::with('roomtypes')->get();
return view('home', array('rooms'=>$rooms));
}
现在在blade视图中按以下方式访问房型-:
@foreach ($rooms as $rooms)
<tr>
<td>{{ $rooms->roomno }}</td>
<td>{{ $rooms->luxurytype }}</td>
<td>{{ $rooms->roomtypes[0]->description }}</td>
<td>{{ $rooms->status }}</td>
<td></td>
</tr>
@endforeach