
Ilya
21.06.2018
20:27:01
хотя мне опять кажеться что я что то упустил
блять

Артур
21.06.2018
20:27:13
https://ruseller.com/lessons.php?id=1145

Google

Артур
21.06.2018
20:28:04

Ilya
21.06.2018
20:28:30
методы работы с базой данных

Артур
21.06.2018
20:28:53
Модель в laravel = представление строки конкретной таблицы, а также конструктор запросов и для получения коллекции
Если корзина у тебя есть табличка в которой содержится товар и пользователь - тогда да, юзай модель

dєєp ín
22.06.2018
01:19:33
Вот почему оно вывело эту запись если там ничего нет

Артур
22.06.2018
03:10:37
Когда было сказано что он хочет вызывать работу с корзиной через контроллер, реаизуя там всю логику, я посчитал это не резонным.
Изоляция данной логики и последующий выхов в контроллере некоего класса, который будет отвечать за поведение корзины гораздо правильнее.

Subb98
22.06.2018
03:14:18

Артур
22.06.2018
03:18:42
Вопрос. Какое правильное решение, если я хочу чтобы при создании по умолчанию в таблицу заявки ложилсь id менеджера создавшего строку?

Subb98
22.06.2018
03:19:14
сиды?
можно, в принципе, и в миграцию пихнуть, но не знаю, насколько это корректно.

Артур
22.06.2018
03:22:55

Google

Subb98
22.06.2018
03:23:01
да
вопрос в наполнении таблицы дефолтными данными, не?

Артур
22.06.2018
03:23:32
Нет. Вопрос не в этом
Сейчас наваяю пример кода

Subb98
22.06.2018
03:23:58
а, всё, перечитал.
я бы сделал через many-to-many.

Артур
22.06.2018
03:25:54
В идеале избежать ошибки программиста и автоматом просталять, если не было задано вручную

Subb98
22.06.2018
03:27:48
сделать свою фабрику и вызывать создание через владельца (менеджера)?

Артур
22.06.2018
03:28:52
То есть типа Auth()->newApplication(); ?

Subb98
22.06.2018
03:28:54
то есть, кладём в фабрику сущность менеджера, фабрика нам отдаёт новую сущность с привязкой.

Артур
22.06.2018
03:29:20
а, полнял. Спасибо

Nik
22.06.2018
04:45:08

Артур
22.06.2018
04:46:07
?

Nik
22.06.2018
04:46:27

Артур
22.06.2018
04:47:04
я про OCP и ISP

Kirill
22.06.2018
04:47:51
https://github.com/spatie/laravel-permission
Кто пользуется, подскажите как быть с пермишинами, не проходят валидации, если жоско не задатьгвард_нейм в юзере. Но у меня у юзера может быть как web гвард, так и api

Subb98
22.06.2018
04:48:19

Nik
22.06.2018
04:48:21

Артур
22.06.2018
04:48:28
Зависит от того как вынесет. Но если он изолирует повдение корзины от контроллера - всяко лучше - чем использование контроллера в качестве носителя обособленной бизнес логики

Google

Kirill
22.06.2018
04:50:34
zizaco entrust попробуй
тпотому что нет иного решения как сменить зависимость, или потому что не обойти необходимость задвать гвард_нейм ?

Subb98
22.06.2018
04:50:57
очень удобный.
там с валидацией всё ОК, прямо в мидлвар, как и положено.

Kirill
22.06.2018
04:52:13

Subb98
22.06.2018
04:52:16
+
https://github.com/Zizaco/entrust

Nik
22.06.2018
04:52:47

Артур
22.06.2018
04:55:07
При изменении логики корзины - как это пвлияет на весь окружающий код? Как это будет работать с другими сервисами приложения?
Я завтра изменю структуру корзины, но из-за того что работа идет напрямую с базой, это потребует вмешательства везде, где структура изменится

Kirill
22.06.2018
04:55:11
если вынесли необходимость задавать имя гварда, то я не пойму как модель сможет понять в какой момент с каким гвардом её дёрнули
или с какиим следовало бы дернуть
как вообще модель тут может на что-то влиять

Subb98
22.06.2018
04:56:19
что такое гвард? роль?

Kirill
22.06.2018
04:56:38
дефолтные гварды ларавеля
одного из требует указывать в модели, имя гварда

Subb98
22.06.2018
04:57:08
делаем свои роли, присваиваем сущности роль, танцуем мидлвар
конфигурим пермишены ещё
не знаю, зачем вообще трогать деф. гварды

Артур
22.06.2018
04:58:07

Subb98
22.06.2018
04:58:11
там только гость да юзер

Google

Kirill
22.06.2018
04:58:32
а их и не приходится трогать, нужно указать лишь какой использовать
только необходимо тригерить какой

Subb98
22.06.2018
04:58:55
задать можно, например, при регистрации

Kirill
22.06.2018
05:00:18
на этапе роутинга задается пермишен, происходит валидация на юзера, потом идёт проход в модель и проверяется с каким гвардом следует проверять заданные в роутах пермишен
так вот с такой цепочкой как я тригерну гвард в моделе
дума что-то не знваю

Subb98
22.06.2018
05:01:28
нафига хранить в модели пермишены?
или я тебя не так понял..
смотри, крч, как можно сделать

Kirill
22.06.2018
05:02:28
пакет этот просит в моделе задать имя гварда)

Subb98
22.06.2018
05:03:03
понятно. тогда мой совет был уже выше ) попробуй нормальный пакет с нормальной архитектурой )

dєєp ín
22.06.2018
05:03:09

Kirill
22.06.2018
05:03:12

Subb98
22.06.2018
05:03:28
там централизованно настраиваются роли и пермишены для них )

Kirill
22.06.2018
05:03:53
ок, спасибо

Subb98
22.06.2018
05:03:59
нез )

Артур
22.06.2018
05:05:15
? а я его испольовал.
https://github.com/santigarcor/laratrust/tree/5.0

Subb98
22.06.2018
05:05:46

Артур
22.06.2018
05:06:29
Потому что не видел энтраста?

Google

Subb98
22.06.2018
05:06:46
п.с.: выбирать пакет удобно прямо на packagist.org там удобные фильтры и сразу видно популярность / актуальность пакета

Артур
22.06.2018
05:07:38

Subb98
22.06.2018
05:08:03
ну, зато у тебя +experience теперь
можешь сделать pull request в пакет и получить ещё + в портфолио как контрибьютер

Andrey
22.06.2018
05:08:54
Хм, я тоже обычно пакет от spatie использовал, в целом никаких проблем)
Вообще у этих ребят много хорошего в арсенале

Артур
22.06.2018
05:11:35

Andrey
22.06.2018
05:13:06

Артур
22.06.2018
05:13:54
Всмысле?
Мне нужно было деление не только по правам но и по командам. Искал комплексное решение. У них (на тот момент или может я не увидел) понятия teams не было
То есть мне нужно было teams, roles, permissions

Andrey
22.06.2018
05:14:47
Ух, ну да, у них такого нет. Да и не лишнее ли это, когда есть роли?

Nik
22.06.2018
05:15:44

Subb98
22.06.2018
05:15:45
teams можно рассматривать как группы ролей. поэтому нет, не лишнее.