我是laravel 8和blade语法的新手。我正在做一个用户(代理)可以上传公寓的项目。我有代理表和相应的模型关系
主体模型
public function property()
{
return $this->hasMany(Property::class, property_id, id);
}
属性模型
public function agents()
{
return $this->belongsTo(Agent::class, agent_id, id);
}
我用breeze建立了我的注册和登录
我希望座席登录后,将在其 Jmeter 板中显示其属性列表。
@foreach(Auth::user()->properties as $property)
@if(($loop->count) > 0)
<td class="py-3 px-2">
<div class="inline-flex space-x-3 items-center">
<span>{{$property->propertyId}}</span>
</div>
</td>
<td class="py-3 px-2">{{$property->building}}</td>
<td class="py-3 px-2">{{$property->rent->name}}</td>
@else
You have not uploaded any apartment
@endif
@endforeach
但是我得到错误“未定义的变量$属性”。
同时,{{ Auth::user()-〉其他名称}}工作正常。
代理控制器
public function index()
{
return view ('dashboard', [
'agent' => Agent::all(),
'appointment'=>Appointment::all(),
'properties'=>Property::all(),
'schedule'=>AgentSchedule::all()
]);
}
属性控制器
public function create()
{
return view('pages.uploadapartment', [
'states'=> State::all(),
'areas'=>Area::all(),
'buildings'=>building::all(),
'buildingtypes'=>BuildingType::all(),
'rentpaymentmethods'=>rentpaymentmethod::all(),
'flattypes'=>flattype::all(),
]);
}
1条答案
按热度按时间py49o6xq1#
因为您没有使用用户模型来定义关系!
你们的关系应该是这样的:
当您需要登录用户的属性时,可以像这样获取它们:
$properties = Auth::user()->properties;