
Игорь
03.07.2018
18:27:27
А кнечных результатов несколько)

?Donnie ??
03.07.2018
18:27:39
По хорошему миддлвар который юзает фабрику

Игорь
03.07.2018
18:28:06
И все равно в роуте в БД лезть я хз можно ли так

?Donnie ??
03.07.2018
18:28:18
А чего нет?

Google

Игорь
03.07.2018
18:28:38
Ну в данном случае не суть. Нормальное решение

?Donnie ??
03.07.2018
18:28:41
Тебе же никто не мешает сделать User::where()

Игорь
03.07.2018
18:29:25

?Donnie ??
03.07.2018
18:29:49
Если смотреть в доку ларки, то ничего не мешает?
Тут все от религии зависит

Игорь
03.07.2018
18:30:49
Тут все от религии зависит
Ну скорее всего от этого и нужно отталкиваться, а не от доков. Тот же Yii много чего себе в доках позволяет...

?Donnie ??
03.07.2018
18:31:22
Мое дело решение дать, архитектурно как это будет выглядеть меня мало интересует)

Игорь
03.07.2018
18:31:34
+

?Donnie ??
03.07.2018
18:32:44
regex

Игорь
03.07.2018
18:33:03

?Donnie ??
03.07.2018
18:33:19
А ты с ходу скажешь как парсит стрингу email?
Я не помню какая там валлидация

Google

Игорь
03.07.2018
18:34:12

?Donnie ??
03.07.2018
18:35:09
Вот я не уверен что полностью кириллический емейл оно схавает

Игорь
03.07.2018
18:35:54
И как бы не парсил, если в итоге там не окажется валидный e-mail?

?Donnie ??
03.07.2018
18:36:24
Воооот

Игорь
03.07.2018
18:36:25
ываыавы@ывавыааю.уц

?Donnie ??
03.07.2018
18:36:28
regex

Игорь
03.07.2018
18:38:00

?Donnie ??
03.07.2018
18:38:12
Есть такие индивидумы...

Игорь
03.07.2018
18:38:24
Никого не видел с кириллицей

?Donnie ??
03.07.2018
18:38:24
В странах снг
По сути какая разница, у ларки тот же regex
Ты просто юзаешь свой

Игорь
03.07.2018
18:39:35
Да, мне кажется пока что рано еще думать о таких пользователях)
Да и вообще все через соцсети заходят

?Donnie ??
03.07.2018
18:41:36
Ну тут короче от проекта зависит

Игорь
03.07.2018
18:41:45
И если это пока еще не поддерживается стандартом RFC 3696, то я думаю тут уже нужно смотреть не хочешь ли ты потерять этого клиента

?Donnie ??
03.07.2018
18:41:47
Я только свое мнение высказал

Игорь
03.07.2018
18:42:00

?Donnie ??
03.07.2018
18:43:51
Точно так же можно написать просто кастомный месседж типа емейл должен содержать только латиницу и цифры

Google

?Donnie ??
03.07.2018
18:44:20
Тут нужно смотреть сколько таких клиентов к тебе прийдет и какова вероятность потери
При чем в первую очередь денег бизнеса

Игорь
03.07.2018
18:49:04
согласен

Maksim (Ellrion)
03.07.2018
18:57:03

Игорь
03.07.2018
19:00:55
не подскажете, как в сидере заполнить поле user_id в таблице Profile?
class UsersTableSeeder extends Seeder
{
public function run(): void
{
factory(User::class, 10)->create()->each(function ($u){
$u->profile()->save(factory(Profile::class)->make());
});
}
}

Илья
03.07.2018
19:02:47

Maksim (Ellrion)
03.07.2018
19:03:56

Игорь
03.07.2018
19:04:13

Maksim (Ellrion)
03.07.2018
19:04:33

Игорь
03.07.2018
19:04:59
Так он так и заполнит. Нет?
Может я профиль нужно что-то дописать?
$factory->define(Profile::class, function (Faker $faker) {
return [
'birthday' => $faker->date($format = 'Y-m-d', $max = 'now'),
'phone' => $faker->e164PhoneNumber,
'connection' => $faker->realText($maxNbChars = 200, $indexSize = 2),
'country' => $faker->country,
'city' => $faker->address,
];
});
Там поле user_id я не писал, но сидер ошибку пишет

Igor
03.07.2018
19:06:42

Игорь
03.07.2018
19:07:35

Maksim (Ellrion)
03.07.2018
19:07:35


Игорь
03.07.2018
19:08:22
По коду всё верно. А какую ошибку пишет.
: SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value (SQL: insert into `profiles` (`birthday`, `phone`, `connection`, `country`, `city`, `updated_at`, `created_at`) values (2002-12-05, +6170222480846, CHORUS. (In which the words have got into the garden, and marked, with one finger for the White Rabbit hurried by--the frightened Mouse splashed his way through the door, she walked on in a great., Sao Tome and Principe, 97583 Justyn River
Kshlerinton, GA 38605-8822, 2018-07-03 19:07:50, 2018-07-03 19:07:50))

Igor
03.07.2018
19:08:24


Илья
03.07.2018
19:09:27
: SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value (SQL: insert into `profiles` (`birthday`, `phone`, `connection`, `country`, `city`, `updated_at`, `created_at`) values (2002-12-05, +6170222480846, CHORUS. (In which the words have got into the garden, and marked, with one finger for the White Rabbit hurried by--the frightened Mouse splashed his way through the door, she walked on in a great., Sao Tome and Principe, 97583 Justyn River
Kshlerinton, GA 38605-8822, 2018-07-03 19:07:50, 2018-07-03 19:07:50))
Пробовал user_id в fillable в модели профиля добавить?
Такая же ситуация будет?

Игорь
03.07.2018
19:09:39
да и там и там

Google

Игорь
03.07.2018
19:10:31

Gord
03.07.2018
19:10:45
не умею писать, но хочу, не могу начать

Maksim (Ellrion)
03.07.2018
19:11:02
Ну вообще всё должно работать вот в доке также фигня описана https://laravel.com/docs/5.6/seeding#using-model-factories
М?

Игорь
03.07.2018
19:13:20
Илье писал
Код сработал
'user_id' => function () { return factory(User::class)->create()->id; }

Maksim (Ellrion)
03.07.2018
19:13:52

Admin
ERROR: S client not available

Maksim (Ellrion)
03.07.2018
19:13:56
Полная

Илья
03.07.2018
19:14:04
ну так понятное дело, что сработало
но не красиво

Игорь
03.07.2018
19:14:10
И самое интересно, когда писал - думал, что везде все исправил! Был уверен, что все работает. Но оказалось, не сломалось, а не было рабочим)

Igor
03.07.2018
19:14:12
Илье писал
тока ж ты смотри, ты либо связи юзай, либо мой код, но не все вместе

Игорь
03.07.2018
19:14:39

Igor
03.07.2018
19:15:16

Maksim (Ellrion)
03.07.2018
19:15:31
че это вдруг лажа?
Хз как объяснить если тебе самому не понятно.
Это не логично и не по фен-шую скажем так)

Илья
03.07.2018
19:15:44

Google

Илья
03.07.2018
19:16:08
покажи свои связи
profile() из модели User

Igor
03.07.2018
19:16:38

Илья
03.07.2018
19:16:48

Maksim (Ellrion)
03.07.2018
19:17:20

Igor
03.07.2018
19:17:45

Илья
03.07.2018
19:17:50

Maksim (Ellrion)
03.07.2018
19:18:19
Ок был не прав

Igor
03.07.2018
19:18:54
короч офигенная штука, если с ней разобраться. Когда ничего не передано в user_id то вызовется анонимка, и запустит другую фабрику, а если сам передашь user_id то анонимка не вызовется

Игорь
03.07.2018
19:19:39
+

Maksim (Ellrion)
03.07.2018
19:19:56
Но с сэйв от релешена логичнее и должно работать
Странно что ошибка. Я бы разобрался именно в том почему не работает то

Igor
03.07.2018
19:21:02

Илья
03.07.2018
19:21:16
+
Покажи метод profile() из модели User

Igor
03.07.2018
19:22:00

Игорь
03.07.2018
19:22:20

Илья
03.07.2018
19:22:24

Игорь
03.07.2018
19:22:37
да
public function Profile()
{
return $this->hasOne('App\Profile');
}
Кратенько. Или вы считаете нужно было user_id указать?
Там вроде в простых случаях автоматом все подхватывается

Igor
03.07.2018
19:26:08