Size: a a a

pro.rb (Ruby/Rails / RU)

2020 October 15

RP

Roman Patkin in pro.rb (Ruby/Rails / RU)
смысл это из приложения выносить
источник

NB

Nikita Bulai in pro.rb (Ruby/Rails / RU)
Bounded context, все дела. Devise тоже сделан как rails engine
Так что смело выносите, заодно научитесь с энджинами работать
источник

VI

Vladislav Ivanov in pro.rb (Ruby/Rails / RU)
Roman Patkin
если так будешь все выносить, то будет куча энджинов
в этом то и задумка, чтобы все было в отдельных папках (как в Python/Django), чтобы не в одном месте и искать было легче.
источник

VK

Vasyl Kuzmyk in pro.rb (Ruby/Rails / RU)
Ну и плюс этот код точно можно переиспользовать
источник

RP

Roman Patkin in pro.rb (Ruby/Rails / RU)
Vladislav Ivanov
в этом то и задумка, чтобы все было в отдельных папках (как в Python/Django), чтобы не в одном месте и искать было легче.
рельса и джанго отличаются сильно в подходах
какой смысл из рельсы джангу лепить
источник

NB

Nikita Bulai in pro.rb (Ruby/Rails / RU)
Vladislav Ivanov
в этом то и задумка, чтобы все было в отдельных папках (как в Python/Django), чтобы не в одном месте и искать было легче.
идея не в том, чтобы это было отделено физически. Идея в том, чтобы это было переносимо, расширяемо и de-coupled (не могу вспомнить как по-русски)
источник

NB

Nikita Bulai in pro.rb (Ruby/Rails / RU)
Engines как раз и создавались для того, чтобы различные логические (и контекстные) части стистемы можно было выносить и переиспользовать. Авторизация, биллинг, API, нотификации, бла бла бла
источник

NB

Nikita Bulai in pro.rb (Ruby/Rails / RU)
Естественно это не требование, а лишь ваше предпочтение при построении архитектуры приложения и системы в целом
источник

VI

Vladislav Ivanov in pro.rb (Ruby/Rails / RU)
Nikita Bulai
идея не в том, чтобы это было отделено физически. Идея в том, чтобы это было переносимо, расширяемо и de-coupled (не могу вспомнить как по-русски)
понял, спасибо.

Вот так и хотел сделать.

В django / express я просто создавал отдельную папку auth и все что касалось этого там и размещал.
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
Nikita Bulai
Естественно это не требование, а лишь ваше предпочтение при построении архитектуры приложения и системы в целом
ну энджайн все таки не просто логику - это отдельное приложение
источник

NB

Nikita Bulai in pro.rb (Ruby/Rails / RU)
Так авторизация - это и есть под-приложение
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
всё-таки гемы в этом плане мне больше нравятся
источник

RP

Roman Patkin in pro.rb (Ruby/Rails / RU)
Nikita Bulai
Engines как раз и создавались для того, чтобы различные логические (и контекстные) части стистемы можно было выносить и переиспользовать. Авторизация, биллинг, API, нотификации, бла бла бла
ага, зачем выносить логику просто в отдельный сервис обжект, давай обернем в энджин
источник

NB

Nikita Bulai in pro.rb (Ruby/Rails / RU)
Vladislav Ivanov
понял, спасибо.

Вот так и хотел сделать.

В django / express я просто создавал отдельную папку auth и все что касалось этого там и размещал.
Ну в рельсе действительно другой подход, как сказали выше. Но рельсы штука гибкая, можно юзать только MVC, а можно выстраивать более высокие уровни абстракций. Всё зависит от того, что предпочитает разработчик
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
Nikita Bulai
Так авторизация - это и есть под-приложение
ну да, тут я предпочитаю отдельный сервис
источник

NB

Nikita Bulai in pro.rb (Ruby/Rails / RU)
Roman Patkin
ага, зачем выносить логику просто в отдельный сервис обжект, давай обернем в энджин
эм што? вюьхи тоже в сервис объект?
источник

NB

Nikita Bulai in pro.rb (Ruby/Rails / RU)
В либку или ещё во что можно вынести что-то типо BCrypt, а вот модели, классы, вьюхи, контроллеры (если система а-ля devise) - то engine самое то
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
Nikita Bulai
Ну в рельсе действительно другой подход, как сказали выше. Но рельсы штука гибкая, можно юзать только MVC, а можно выстраивать более высокие уровни абстракций. Всё зависит от того, что предпочитает разработчик
есть сторонники DHH и есть те кто: "Чувак, помолчи....")
источник

NB

Nikita Bulai in pro.rb (Ruby/Rails / RU)
Ivan Naumov
есть сторонники DHH и есть те кто: "Чувак, помолчи....")
Это да :)
источник

RP

Roman Patkin in pro.rb (Ruby/Rails / RU)
Nikita Bulai
В либку или ещё во что можно вынести что-то типо BCrypt, а вот модели, классы, вьюхи, контроллеры (если система а-ля devise) - то engine самое то
и что ты получаешь от такого подхода? что у тебя папочка вью потоньше будет?
источник