【发布时间】:2016-07-14 00:16:49
【问题描述】:
模型 1
class RoleModel extends Model {
public $table = 'tblrole';
public $primaryKey = 'RoleID';
public $timestamps = true;
public function RoleBasedPermissions() {
return $this->hasMany('App\Models\Role\RolePermissionModel', 'RoleID', 'RoleID');
}
}
模型 2
class RolePermissionModel extends Model
{
public $table = 'tblrolepermission';
public $primaryKey = 'RolePermissionID';
public $timestamps = false;
public function Permission() {
return $this->hasOne('App\Models\Role\RolePermissionModel',
'PermissionID', 'PermissionID');
}
public function Role() {
return $this->hasOne('App\Models\Role\RoleModel',
'RoleID', 'RoleID');
}
}
模型 3
class PermissionModel extends Model
{
public $table = 'tblpermission';
public $primaryKey = 'PermissionID';
public $timestamps = false;
public function Module() {
return $this->hasOne('App\Models\Role\ModuleModel',
'ModuleID', 'ModuleID');
}
public function Action() {
return $this->hasOne('App\Models\Role\ActionModel',
'ActionID', 'ActionID');
}
}
我的查询如下
$data = RoleModel
::where('RoleID', $RoleID)
->with('RoleBasedPermissions')
->with('RoleBasedPermissions.Permission')
->with('RoleBasedPermissions.Permission.Module')
->get();
错误
调用未定义的方法 Illuminate\Database\Query\Builder::Module()
详情
问题出在这个查询部分->with('RoleBasedPermissions.Permission.Module')
我错过了什么吗?
【问题讨论】:
标签: laravel laravel-5 laravel-5.1 laravel-5.2