
Alexey
26.01.2018
06:36:29
Мне кажется достаточно типовая задача

Alexey
26.01.2018
06:36:53
Делай через события

Alexey
26.01.2018
06:37:07
Сейчас я ее решил тем что заинъектил LayerController в RegistartionController
class RegisterController extends Controller
{
public function __construct(LayerController $layerCtrl, Faker $faker)
{
$this->layerCtrl = $layerCtrl;
И обращаюсь через $this->layerCtrl->create...

Google

Alexey
26.01.2018
06:37:43
и меня это смущает, но я не могу понять как по-другому

Alexey
26.01.2018
06:37:44

Dmitry
26.01.2018
06:38:32

Alexey
26.01.2018
06:39:15
Через события тоже не совсем понятно, потому что я же хочу при запросе на RegistrationController сразу отдать данные и с Layer и с Marker. То есть я предполагаю что мне надо изнутри RegistrationController что то сделать
Естественно при стороннем обращении к LayerController есть валидация и тд

Alexey
26.01.2018
06:40:03

Dmitry
26.01.2018
06:40:06

Alexey
26.01.2018
06:40:14
Бинго!
$myRequest = new Request([
'name' => 'Главная',
'user_id' => $user['id'],
'icon' => 'pin',
]);
$this->layerCtrl->create($myRequest);

Dmitry
26.01.2018
06:40:46

Alexey
26.01.2018
06:40:57
Нет

Google

Dmitry
26.01.2018
06:44:35
Нет
вот зря, смотри как у тебя должен работать котроллер регистрации (примерно)
class Register
function registerUser(Request $request, UserRegisterService $service){
$responce['result'] = true;
try{
$user = $service->registerUser($request);
$responce['user'] = $user;
}catch(Exeption $e){
}
return $responce;
}
все, больше тут ничего не должно быть

Alexey
26.01.2018
06:45:27
Ок, в UserRegisterService как вызвать экшен LayerController?

Dmitry
26.01.2018
06:50:27

Alexey
26.01.2018
06:50:36
Можно решить событиями если мне просто нужно уведомть LayerController. Но если мне нужно получить результат экшена? Ребята предлагают написать отдельный провайдер, в который и LayerController и RegistrationController будут стукаться но это вообще жесть

Dmitry
26.01.2018
06:51:00

Alex
26.01.2018
07:13:31

Alexey
26.01.2018
07:32:09

Evg
26.01.2018
07:34:27
Всем привет. я только начинаю знакомство с Laravel и меня несколько смутила двойственная ситуация с внешними ключами. подскажите пожалуйста мне.
В документации говорится, что можно делать, а можно и нет, просто сказав в eloquent что имеются такие-то отношения между моделями. Но зачем это? Чтобы самому за целостностью данных следить?( Высокоуровнево абстрагироваться от бд? О_о
Какие best practices приняты в Laravel?

Dmitriy
26.01.2018
07:36:08
Я принципиально не буду писать ответ, все есть в доках

Evg
26.01.2018
07:40:04
я не про получение, а скорее про удаление и мертвые записи. если не ввести внешние ключи и их ограничения - я подозреваю, что мы можем получить ряд "мертвых" записей, при удалении некоторых записей, связанных с другими
наверное если не генерить ключи - надо как-то в логике модели это дело обрабатывать

Samat
26.01.2018
07:41:17

Evg
26.01.2018
07:44:20
http://www.diegocaprioli.com/laravel-migrations-write-those-foreign-keys-from-the-start/#I_see_dead_records8230 вот примерно на чем основывается мое беспокойство.
лично мне кажется что лучше сгенерить внешние ключи и прописать все эти действия сразу. такие например как каскадное удаление, или запрещение удаления, если есть связанные сущности.
но зачем-то же в архитектуре laravel сделано так что можно по одному и по второму пути пойти. как в сообществе laravel считается хорошим тоном работать?

Samat
26.01.2018
07:44:50

Evg
26.01.2018
07:51:11

Anton
26.01.2018
07:53:59
Евгений, это сильно зависит от принятых соглашений, никаких бест практик тут нет.

Evg
26.01.2018
07:56:24

Google

Dmitry
26.01.2018
08:18:46

Evg
26.01.2018
08:23:22
вы извините, если я туплю. я laravel только начал смотреть, а опыт разработки у меня из таких страшных областей пхп, которые не очень сочетаются с концепциями нормальных пхп фрэймворков

Dmitry
26.01.2018
08:24:28

Evg
26.01.2018
08:25:40

Samat
26.01.2018
08:30:59

Dmitry
26.01.2018
08:32:17
но в контексте AR так и придется делать. Но если это сделать в сервисе, то код станет гибче

Evg
26.01.2018
08:39:18
так-с, ну примерно понял, да. спасибо?

Samat
26.01.2018
08:40:48
почему, кстати, все так не любят события?

Dmitry
26.01.2018
08:41:59
ты делаешь страницу, а у тебя всегда с ней заголовок какой то непонятный. И вот ты сидишь и вкуриваешь что не так. А потом оказывается что он по событию отправки ответа добавляется

Evg
26.01.2018
08:43:00
нууу.... если знать, что они вообще в принципе есть, то они лежат себе в одном месте и понятно работают
ну да, если не знать, то будет сюрприз)

Maxim
26.01.2018
11:03:15
Я к событиям нормально отношусь.
Так мы можем сделать код чище
Хуже когда в бд есть триггер и что-то делает вместо php

(;¬_¬)
26.01.2018
11:03:37
смотря какие у тебя объемы бд

Maxim
26.01.2018
11:05:15

(;¬_¬)
26.01.2018
11:06:47
ну тогда тебе не нужны в них триггеры. а бывают ситуации когда триггеры нужны и работают живее чем тот же код на пхп
но опять же там объемы другие

Maxim
26.01.2018
11:07:31

Google

(;¬_¬)
26.01.2018
11:08:15
?я тоже не пользуюсь триггерами. но люди работающие в крупных организациях, где есть отдельные отделы DBA говорят, что триггеры нужны =)

Maxim
26.01.2018
11:08:41
Ok)))

Ахмедов
26.01.2018
12:11:12
Почему тэг мултипл не работает?

Илья
26.01.2018
12:29:58
Требуется программист laravel. Срочно

Admin
ERROR: S client not available

Andrey
26.01.2018
12:30:44

Ахмедов
26.01.2018
12:32:22

Dmitry
26.01.2018
12:32:57

(;¬_¬)
26.01.2018
12:33:00
это такой селект мультипл если к нему никакие плагины не подключать

Ахмедов
26.01.2018
12:34:11

Илья
26.01.2018
12:44:46
Требуется программист для создания Регистрации \ Авторизации laravel.
В дальнейшем нужно будет применять шаблонитизатор, настройка лк.
Цены, сроки, в лс. Вышлю скриншоты вёрстки. Сейчас работа на PHP

Евгений
26.01.2018
12:57:09
make:auth - регистрация и авторизация

Денис
26.01.2018
13:25:29
?

Leonid
26.01.2018
14:39:09
Есть ли стандартный способ изменения отображения в json и задания даты в виде unix timestamp, но при этом способ хранения в базе оставить прежним?
protected $dateFormat = "U" - этот способ так же и ожидает, что данные в базе будут храниться как unix timestamp, потому данный способ не подходит.
$casts подходит для отображения, по при задании даты в виде 1516888505 ларавел смотрит на меня, как на идиота.

Dmitry
26.01.2018
14:44:43

Leonid
26.01.2018
14:57:24
Штука полезная, в будущем воспользуюсь. А без ресурсов это решается? Ну кроме как написанием везде setMyDateAttribute().

Dmitry
26.01.2018
15:00:02

Google

Leonid
26.01.2018
15:02:40
и получать и записывать
мне нужно иметь возможность хранить в одном формате, а получать и записывать в другом. $casts помогает в получении, а в записи что поможет?

Dmitry
26.01.2018
15:05:27
ну что бы отдавать, лучше все же через декораторы писать.
а записывать надо уже обработанные данные. Мутаторы это конечно хорошо, но надо быть точно уверенным что оно везде так будет работать. В твоем случае это не так. Запросто может быть что где то в другом месте дата придет в другом формате, и тут будут большие проблемы.

Dzhamil
26.01.2018
15:08:29

Valeriy
26.01.2018
15:10:15
Добрый вечер,друзья.Можно в этом чате задавать вопросы по гиту ?

Dave
26.01.2018
15:10:30
@DaRoBa а с гитом могут быть проблемы?

Valeriy
26.01.2018
15:10:37
ну смотря у кого
))

Dave
26.01.2018
15:10:46
ну говори че уж раз начал)

Leonid
26.01.2018
15:11:01
Даты могут придти только в юниксе и я бы хотел, чтобы в какой-то массив мог ввести параметры и они будут автоматически форматироваться в выбранный в параметре $dateFormat формат.

Valeriy
26.01.2018
15:11:08
не могу клонировать репозиторий с сервака,ща ошибку кину.первый раз такое вижу

Юрий
26.01.2018
15:11:31

Leonid
26.01.2018
15:11:32
Этот функционал, конечно, могу и сам написать, но хочу уточнить, нет ли стандартных способов для этого
Да знаю я про карбон

Valeriy
26.01.2018
15:14:40
@aioslike
думаю мб что то с хостингом

Dave
26.01.2018
15:15:17
это клонирование на чистую?