如何建立用户与类别的关系?
一个类别有多个用户,一个用户属于一个类别
我在用户表中添加 category_id
在前端,我使用插件生成器显示用户列表, 但我还想显示用户的类别
我使用RainLab用户插件
请帮帮我,
先感谢您
看来您需要扩展用户模型并添加category
关系运行时
您需要将此代码添加到插件的启动方法中
public function boot()
{
//Extending User Plugin
\RainLab\User\Models\User::extend(function($model) {
$model->hasOne['category'] = 'HardikSatasiya\Plugin\Models\Category';
});
}
此代码将为用户模型添加动态关系,因此现在您可以直接使用此关系$userModel->category->name
所以现在在列表中你可以使用下面的代码
{% for user in records %}
Email : {{ user.email }}
Category : {{ user.category.name }}
{% endfor %}
如有任何疑问,请发表评论。
与OctoberCMS 关系很容易。我认为您已经在User
模型中定义了关系,如果没有先定义它,如下所示,
public $belongsTo = [
'catgeory' => 'YourPluginName\YourAuthorName\Models\Category'
];
代替YourPluginName和YourAuthorName,请定义您的作者和插件名称。
定义关系后,您可以通过以下方式检索用户的类别$user->category
例如,假设您有第一个用户,那么您可以通过以下方式检索类别,
$user = User::first();
$category = $user->category;
//and now you can get the category name and all fields by $category,
//$category->title;
//$catgory->name;
如果您在页面中使用twig,并且向用户显示{{ user.name}}
(字段可能不同),那么您只需使用{{ user.category.name}}
(字段可能不同),您也可以显示类别。
我希望你能得到用户的类别。如果您发现任何困难,请发表评论。