Добавить настройки пользователя по умолчанию в связанной таблице на регистр, Laravel - PullRequest
0 голосов
/ 30 апреля 2019

Когда пользователь регистрируется, как мне сохранить некоторые пользовательские настройки по умолчанию в таблице user_settings, которую я имею в таблице?У меня есть hasOne и отношение настройки для 2 моделей.Я пытался что-то подобное в контроллере регистра, но получил ошибку.

    protected function create(array $data)
{

    $user = User::create([
        'name' => $data['name'],
        'email' => $data['email'],
        'password' => Hash::make($data['password']),
    ]);

    Return Usersetting::create([
        'user_id' => $user->id,
        'user_name' => 'u'.$user->id,
        'profile_name' => $user->name,
        'user_email' => $user->email,
        'user_private account' => 0,
        'user_fans_counter' => 1,
        'new_subscriber_alert' => 1,
        'new_tip_alert' => 1,
        'new_private_message_alert' => 1,
        'new_referral_alert' => 1,
    ]);
}

1 Ответ

1 голос
/ 30 апреля 2019

Вы можете удалить вторую часть и добавить метод registered в свой RegisterController. Если у вас правильно настроены отношения, вы можете добавить, как показано ниже

public function registered(Request $request, $user) 
{
    $user->userSetting()->create([
        'user_name' => 'u'.$user->id,
        'profile_name' => $user->name,
        'user_email' => $user->email,
        'user_private account' => 0,
        'user_fans_counter' => 1,
        'new_subscriber_alert' => 1,
        'new_tip_alert' => 1,
        'new_private_message_alert' => 1,
        'new_referral_alert' => 1,
    ]);
}

Таким образом, user_id должно автоматически заполняться через отношения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...