【问题标题】:User plugin. Set relation after create a model用户插件。创建模型后设置关系
【发布时间】:2019-10-13 07:51:19
【问题描述】:

我自定义了 Rainlabs 的 User 插件。

用户模型与用户组有关系。创建用户后,我想设置他的用户组(访客、注册等)。

它不工作:

// also tried beforeCreate
public function afterCreate()
{
    if (something)
       // groups is a relation field name
       $this->groups = 'guest'; // guest is a user group code
    else
       $this->groups = 'registered';
}

【问题讨论】:

  • 你在写用户模型吗?如果插件更新,您将丢失您的代码
  • 我赞同扎基尔的说法。您应该扩展用户插件而不是自定义用户插件。如果您这样做了,您的自定义代码将在用户插件更新时被删除。
  • @Pettis Brandon 谢谢!

标签: laravel octobercms


【解决方案1】:

解决方案:

// User model
public function afterCreate() {
    $this->groups()->add(UserGroup::where('code', 'registered')->first());
    ...
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-12
    • 1970-01-01
    • 2020-01-26
    相关资源
    最近更新 更多