Я хочу создать функцию перенаправления в том виде, в каком она есть сейчас, моя текущая функция в контроллере авторизации - если фильм не существует, он перенаправляется на страницу для его создания. Но я хочу изменить это сейчас, так как этот маршрут больше не нужен. Вместо этого мне нужно, чтобы ПОЛЬЗОВАТЕЛЬ не настроил / установил возраст или пол, он перенаправляет их на страницу пользователя /user
с новым именем маршрута как user_update
Текущая функция:
private function redirect(): RedirectResponse
{
if (!$this->user->film()->exists()) {
return redirect()->route('film_create');
}
return redirect()->route('home');
}
модель пользователя: поля задаются как константы с массивом значений в верхней части модели, например, тип пола, возрастной диапазон
protected $fillable = [
'id',
'age',
'gender',
];
знаете ли вы, как я могу изменитьописанная выше функция для создания оператора IF для проверки, установлены ли эти поля для пользователя или нет, если не перенаправить их на страницу /user
?
, у которой возникли проблемы при попытке найти ресурсы о том, как это сделать.
Сейчас я пишу тест для этой функции, но у меня возникли небольшие проблемы с ее выполнением ..
это текущий тест
/**
* @test
* Create mocked user, send them to user page and assert they exists in database
*/
public function it_creates_user_on_redirect()
{
$email = 'foo@bar.com';
$this->mockSocialite($email);
$this->get(route('auth_callback'))
->assertLocation(route('film_create'));
$this->assertDatabaseHas('users', [
'email' => $email,
]);
}
Как мне приступить к модификацииэтот тест, чтобы убедиться, что он охватывает новую функцию? @Saly 3301