此前,我曾与bog标准PHP一起工作过,最近他们转向Laravel。我无法理解的一件事是Laravel Eloquent中的SQL查询。在Laravel中了解口才
例如我有一个角色和一个用户表。角色表包含角色和每个角色的ID。用户表包含各种用户详细信息以及role_id以引用用户的角色。
我在我的用户模型试图
public function role()
{
// return $this->hasOne('App\Phone', 'foreign_key', 'local_key');
return $this->hasOne('App\Role', 'id', 'role_id');
}
我在我的榜样试图
public function users()
{
return $this->hasMany('App\User', 'role_id', 'id');
}
然后在我的控制器
public function index()
{
$var = User::find()->role->get();
return view('article',
array(
'var' => $var
));
}
但是现在如何像在普通PHP中一样访问这两个表中的字段呢?我宁愿使用标准的SQL,但我正在努力学习这个框架。
有什么建议吗?
改变'hasOne尝试它( '应用程序\角色', 'ROLE_ID', 'ID');',但事实上,你可以只ommit键和雄辩会在你的情况下对他们进行猜测。 –
告诉我角色和用户之间想要什么关系(1-1,1-n,n-n)。我会给你一个例子 – KmasterYC
我会用'belongsTo('App \ Role')'作为'role()'关系。 这是在_many_一侧建模一对多关系的方式。 –