Laravel - 具有存储库参数的模型中的方法?

时间:2015-02-11 19:50:38

标签: php laravel repository views

我正在使用laravel,我遇到了一些问题,我不太确定最好的方法是什么。

我的views文件夹中包含以下行的文件:

{{ $user->permissionName() }}

函数permissionName()获取用户的$permission_id属性,然后返回权限的名称。

问题是我不应该从模型中获取数据。我需要在Repository文件上编写此函数。但现在我有一个新问题...... 如何将此功能添加到view文件?

我依赖于mvc上的数据应该是这样的事实:

Model > Repository > Controller > View

还是我错了?

1 个答案:

答案 0 :(得分:2)

你不能用relationship而不是写一个函数吗?在您的用户模型上,您可以建立如下关系:

/**
 * @return \Illuminate\Database\Eloquent\Relations\HasOne
 */
public function permissionName()
{
    return $this->hasOne('App\PermissionName', 'permission_id');
}

然后您仍然可以在视图中使用{{$ user-> permissionName}}。