
breakt1mus
14.09.2018
06:53:51

Vadim
14.09.2018
07:42:17
Как лучше спроектировать базу. Есть регистрация пользователей двух типов. И можно зарегистрироваться на одни данные и туда, и туда.

breakt1mus
14.09.2018
07:44:00

Максим
14.09.2018
07:51:48
Похоже, я тут стану скоро сильно более частым гостем. Таки забиваем мы на поддержку первой версии фреймворка. Настроились на апгрейд до второй и потом до третьей версии.

Google

Максим
14.09.2018
07:52:29
Там, конечно, вкусно получается в плане первого Yii. Но коробило всегда, что этим никто кроме нас пользоваться не будет. )

Махмуд
14.09.2018
07:52:55
А почему не сразу на третью?

Максим
14.09.2018
07:53:03
У нас уже вынесенный active-record в том виде, что подключается даже к Битрикс. Почти полный тайп-хинтинг и т.п.
Я лучше если премя попробую третий помочь ребятам попилить. Хотя временной вопрос - это всегда жесть. )
Тем более что мы двигались с ними параллельно и в одном направлении.
Да и садить проекты федерального масштаба на dev-master ?
Я пользую его для одного "домашнего" проекта. Так что в курсе того что куда движется.
Так что, again, всем привет! )

Andrey
14.09.2018
07:58:14
Когда релиз 3 версии?)
Привет ✌️

Максим
14.09.2018
07:58:49

Andrey
14.09.2018
07:58:57
?

Google

Andrey
14.09.2018
07:59:43
Опять все переписывают?)

Максим
14.09.2018
08:00:26
Ну вот пока что yii2 проект работает на dev-master с минимальной доработкой. Пока-что всё идёт хорошо.
Баттл был нехилый кстати в плане того куда обновляться. Метались между Spring, Symfony, Yii, Laravel и некоторыми менее известными решениями.

Andrey
14.09.2018
08:02:42
laravel))

Максим
14.09.2018
08:02:44
В финальной битве сошлись Yii и Spring. Symfony и Laravel спасовали достаточно быстро. Spring замочил Symfony, а Laravel - самоликвидировалась.
В итоге выбирали скорее концепцию разработки, а не собственно фреймворк.
Я был удивлён насколько резво Spring давил почти всё что есть в мире php. Нет смысла с ним тягаться. Yii оказался одним из немногих, кто именно что php-way.
Ну реально, зачем Symfony, если есть Spring? ?
Разве если кто из разрабов неспособен в Java, а реально нужно прямо энтерпрайз.

Kamila
14.09.2018
08:06:29

Максим
14.09.2018
08:07:15
Кто-то неплохо поднимает? ?

Nibbler
14.09.2018
08:09:28

Максим
14.09.2018
08:10:46
Что тут за такое принято? Просто удалить или веник с тазиком выдать?

Vadim
14.09.2018
08:15:20

Максим
14.09.2018
08:16:00
Опять все переписывают?)
В итоге без хорошего напильника не обойдётся. Если они решили ввести полный, насколько возможно, тайп хинтинг, то как минимум его расставить по проекту очень много где придётся.

Vadim
14.09.2018
08:17:39
laravel))
Напомните, почему такой скепсис про ларавель?
Вопрос серьезный, если что ) Я правда не знаю.

Максим
14.09.2018
08:20:39
Нет скепсиса. Он классный. Удобный. Но по своей природе он нечто среднее между Symfony и Yii. Прибавить сюда кадровый вопрос и цену, которую платит CPU за его удобства, то получается что он не так уж и интересен бизнесу.
Ну и поддержать отечественного производителя. Это же приятно.
Мне почему-то Laravel очень Rails всегда напоминал. Не фукнционалом, так подходом к экосистеме разработки.

Google

Максим
14.09.2018
08:23:56
В общем, Лару всегда любил, но профессионально с ней практически не пересекался. Её ниша и моя они, так вышло, давно не пересекаются.
И нужно учесть, что тут всё ИМХО, конечно.

Maxim
14.09.2018
08:31:33

Максим
14.09.2018
08:32:52
Даже не технологически. Идейно что ли. Они там всё for fun.
Их девиз - разработка в радость. И Rails так же. Они все счастливые всегда и беспечные. ))

Maxim
14.09.2018
08:35:25

breakt1mus
14.09.2018
08:36:09

Maxim
14.09.2018
08:42:00
Это, получается, им нужен будет разные компонет User? Как это разграничить? Модулями отдельными?
User оставь один на всех и профиль оставь один на всех, с общей информацией. А профиль уже вяжи с какой-то сущностью, и там делай индивидуальные поля. Таким образом сможешь вынести это в модуль profile и в нем регулировать эти вопросы.
Профиль можешь вязать через user_id, чтоб из пользователя мог отдельно получать данные "продавца" и "покупателя"
У тебя везде должно выйти 1 к 1, поэтому из профиля сможешь получать данные через ->hasOne(Customer::class, ['user_id' => 'user_id'])

Максим
14.09.2018
08:43:20
Кстати, вопрос залу: а вы храните контроллеры и вьюшки в модулях? Не думали что бы этого не делать?..

breakt1mus
14.09.2018
08:43:49

Максим
14.09.2018
08:44:05
Это было припасено на второй вопрос. ?

breakt1mus
14.09.2018
08:44:25
Ну второй тогда в студию)

Максим
14.09.2018
08:44:33
Модуль - это группировка бизнес-логики, объединённой общей целью. А имеет ли отношение реализация этой логики к ней отношение?..
Контроллеры и вьюшки ближе к реализации, чем к логике.

breakt1mus
14.09.2018
08:45:34
Хм, тогда чтобы перенести какой то работающий модуль постоянно реализовывать его в другом проекте, интересная логика ?

Максим
14.09.2018
08:46:10
Да, есть в этом замечании изрядно смысла. Но часто ли ты таскаешь контроллеры и вьюшки без изменения?..
Разные проекты - разная интерфейсная логика.
Да, есть темы. Но не всегда только ими можно обойтись.
Я не настаиваю на своём мнении. Просто обдумываю такой подход последние пару дней. Интересно послушать что думает сообщество по этому поводу.

Maxim
14.09.2018
08:48:42

Google

breakt1mus
14.09.2018
08:48:57
Вопрос по большей части в удобности, если вам удобнее и проще заново сделать контроллер и вьюхи, то конечно можете не хранить их в модулях, а каждый раз с нуля все делать. Лично мне такой подход не особо нравится

Максим
14.09.2018
08:49:31
Почему модули, а не библиотеки? Всё просто: конечная реализация бизнес-логики часто бывает неотъемлемой частью бизнес-логики. Например, - обработка уведомления от почтовой системы об отправке или неотправке письма. Это контроллер, раут и т.п.

Maxim
14.09.2018
08:57:16

Максим
14.09.2018
08:58:01
Как вариант, да.

Dmitriy
14.09.2018
08:59:04
@ExileeD ты шаришь всяко
не видел не одну реализацию по поводу валидации в TransactionScript. все выносят отдельно что бы не нарушать солиды.
Но единых правил валидации в ддд нет.
Многие бизнес валидацию делают в доменной модели.
Для промежуточных вариантов валидации используется Паттерн Снимок.
бизнес-сущность защищает свои инварианты и всегда должна находиться в валидном состоянии
самая норм статья https://lostechies.com/jimmybogard/2009/02/15/validation-in-a-ddd-world/ по теме

Maxim
14.09.2018
09:06:20

Admin
ERROR: S client not available

Dmitriy
14.09.2018
09:10:59

Иван
14.09.2018
09:12:09

Dmitriy
14.09.2018
09:21:18

Максим
14.09.2018
09:22:35
Почему, нельзя?..

Иван
14.09.2018
09:22:52
Как?
В конфигах приложения указываешь namespace и все контроллеры должны быть в этом неймспейсе

Ad.x ??
14.09.2018
09:23:55

Павел
14.09.2018
09:25:10
Слова не мальчика, но мужа!

Максим
14.09.2018
09:25:26
Джавистам это необходимо.

Dmitriy
14.09.2018
09:25:31
Как?
https://github.com/qiansen1386/yii2/commit/eb8296f2bb18c4f68e442f22879213f4e58b7e85

Google

Павел
14.09.2018
09:26:03
А иначе как бабло зарабатывать? Надо упарываться по всяким продвинутым техникам. Тогда и ценник можно зарядить норм!

Nibbler
14.09.2018
09:26:05

Ad.x ??
14.09.2018
09:26:10

Павел
14.09.2018
09:26:43
Выпьем за питон!

Ad.x ??
14.09.2018
09:27:17
за упокой?! :D

Максим
14.09.2018
09:27:19

Павел
14.09.2018
09:27:59
Зато он политкорректный

Максим
14.09.2018
09:28:58
Да это уже старая тема. Очень давно эта конетель. Самое громкое было с roslyn. Когда отказались от whitelist/blacklist
https://github.com/dotnet/roslyn/pull/3507/
Нашёл )
Самый любимы комментарий про whitespace
Надо на табы переходить. ?
Питон мог захватить мир, но был побеждён UTF. ¯\_(ツ)_/¯

Ad.x ??
14.09.2018
09:36:25
:D
никто не в курсе. если взять серт от клаудфлары но не проксить через нее, серту пиздец не настанет?

Evgeny
14.09.2018
09:37:10
народ, может я конечно и чего-то не знаю, но как переопределить или отключить less файл
вот он мне всю малину для печати страницы портит

Ad.x ??
14.09.2018
09:42:35