
Anton
06.06.2017
13:42:13
а
не
сорян

Alex
06.06.2017
13:42:34
я кстати тоже сверху накосячил, там надо обернуть типа в AVG()

Google

Anton
06.06.2017
13:42:38
PostRepository.new.posts.select { count(views) }
как ты ILIKE в АР делаешь?

Alex
06.06.2017
13:43:04
слушай скажу честно мне просто сейчас лень смотреть как оно точно пишется.

Anton
06.06.2017
13:43:13
по двум полям например
with_prices.where { display_name.ilike(pattern) | name.ilike(pattern) }
вот так это в роме делается

Alex
06.06.2017
13:43:32

Anton
06.06.2017
13:43:37
но это просто реализация паттерна
и к репозиторию тут отношения мало

Vasiliy
06.06.2017
13:43:54
но ведь это вкусовщина как с бд работать жи
если грамотно писать везде можно нахуевертеть

Anton
06.06.2017
13:44:40

Google

Anton
06.06.2017
13:44:46
ну хорошо, вопрос тебе
почему у тебя в модели User есть класс методы, а есть инстанс методы?
почему у тебя модель знает о том, как в базу сходить и как для инстанса данные обработать?

Vasiliy
06.06.2017
13:45:49
у ханами же бедная экосистема(нет?) и плюс - чем он прям лучше рельсы, киллер фича?

Alex
06.06.2017
13:46:25
Вопрос не очень понятен

Anton
06.06.2017
13:46:31

Alex
06.06.2017
13:46:34
Мне кажется очевидно почему так сделано

Anton
06.06.2017
13:46:43

Alex
06.06.2017
13:46:49
потому что удобно.

Anton
06.06.2017
13:47:09
почему у тебя класс знает о том, как он в эластике ищется, как в auth он должен вести себя

Alex
06.06.2017
13:47:11
то что оно нарушает какие то там принципы это одно, но при этом оно добавляет может и временное но удобство.

Vasiliy
06.06.2017
13:47:13

Alex
06.06.2017
13:47:27
потому что удобно.
почему у тебя класс знает о том, как он в эластике ищется, как в auth он должен вести себя
ну вот хз какой ответ ты ожидаешь.

Anton
06.06.2017
13:47:55

Alexander
06.06.2017
13:48:04

Anton
06.06.2017
13:48:20
знает только про то, как получить от реквеста данные, как их провалидировать и что с ними дальше в рамках реквеста делать

Google

Alexander
06.06.2017
13:48:48

Vasiliy
06.06.2017
13:48:51
ДатаМаппер же нам говорит - а нука опишика блять всё на свете что тебе надо будет в БД и потом только запрашивай, да не просто так запрашивай, а давайка через репозиторий, потому что там находятся все методы работы

Alexander
06.06.2017
13:48:59

Anton
06.06.2017
13:49:16

Alexander
06.06.2017
13:49:35
к чему такое поведение контроллеров ближе: к паттерну АР или репам?

Anton
06.06.2017
13:51:09
ты спрашивал почему один класс может знать про две вещи :)
ну, ты не путай пожалуйста котов и котлеты
контроллер знает все про реквест и что с ним дальше делать
модель знает все про бд, схему данных и как данные обработать. а так же про (это в будущем): то, как oauth данные мапить на модель будет, как в эластик выгружать данные, как датаобъект будет себя вести и кучу всего

Vasiliy
06.06.2017
13:52:23
ну в общем то я выше и писал что мне удобнее что я _допускаю_ что-то есть у меня в бд и работаю с этим, в принципе прослойка в виде репозитори имеет место быть

Anton
06.06.2017
13:52:24
а, еще часто в рельсе модель знает как данные серилизовать для экшенов
что тоже странно

Vasiliy
06.06.2017
13:52:38
но ведь ханами это не датамаппер же и рельса не АР

Alexander
06.06.2017
13:52:49
что тоже странно
что-то мешает использовать form object, view object и пр.? или смотрим на решение из коробки только?

Vasiliy
06.06.2017
13:53:46
имонно

Anton
06.06.2017
13:54:09
:)

Vasiliy
06.06.2017
13:54:26
да может они и нахуй не нужны, кек?

Anton
06.06.2017
13:54:31
ну и форм объекты тоже (хотя думаю кто-то найдется)

Alex
06.06.2017
13:54:41

Google

Anton
06.06.2017
13:54:49
ну вот, кто-то их использует

Alex
06.06.2017
13:54:52
вью объекты в прошлом проекте чуток юзал.

Anton
06.06.2017
13:55:11
только форм объеты - это о том, как данные провалидировать, сохранить и показать в форме/не форме

Alexander
06.06.2017
13:55:33

Anton
06.06.2017
13:56:09
если ты внятно придешь и скажешь, что мол вот так и так, надо юзать репозитории, то никаких проблем не будет :)
в моем личном случае проблем не было

Alex
06.06.2017
13:56:29

Alexander
06.06.2017
13:56:32

Alex
06.06.2017
13:56:51
ток без гайда.

Admin
ERROR: S client not available

Anton
06.06.2017
13:57:20
назови минусы ром'а
документация сырая, некоторые вещи не очевидны и сложно апдейтить версии. ну и первые 1-2 месяца привыкать сложно, но это не минус рома, а минус любой технологии

Alex
06.06.2017
13:57:40
что со сложностью апдейтов версий?

Anton
06.06.2017
13:58:14
когда я давал ссылку, посыл был в том, что люди не пробовали что-то, но при этом имеют мнение, что это не нужно
я предложил попробовать и после этого сказать, нужно или нет

Vasiliy
06.06.2017
13:59:29
я в общем тем сообщением немного иронизировал)

Anton
06.06.2017
13:59:57

Google

Vasiliy
06.06.2017
14:01:18
с другой стороны

Anton
06.06.2017
14:01:33
если у вас есть какие-то предрасудки по репозиториям, покажите конкретный пример, где это может вызвать проблему, я с радостью отвечу

Vasiliy
06.06.2017
14:02:07
нахера брать ханами если можно взять синатру, к примеру, и так же поставить архитектуру самому?

Anton
06.06.2017
14:02:31

Alex
06.06.2017
14:02:32
ну ханами из коробки я полагаю

Anton
06.06.2017
14:02:47
только не путай пожалуйста роутинг фреймворк и мвс фреймворк
это разные все таки вещи :)

Ярослав
06.06.2017
14:04:52

Anton
06.06.2017
14:05:06

Ярослав
06.06.2017
14:05:50
грубо говоря не выгружать все записи за раз, а брать пачками, и чтобы это работало прямо из коробки

Vasiliy
06.06.2017
14:06:35
ясненько со слимом

Anton
06.06.2017
14:07:02

Vasiliy
06.06.2017
14:07:51
видимо ещё манипуляции проводить

Ярослав
06.06.2017
14:08:00
предположим) либо просто вывести 1000000 записей из БД, но не держать их все в памяти за раз

Anton
06.06.2017
14:08:45
ну ок, это не проблема, пишешь метод, котоорый будет делать релейшен на батч данных, дальше с ним работаешь и все

Nikita
06.06.2017
14:09:03

Anton
06.06.2017
14:09:04
в итоге у тебя будет 1 запрос на батч данных, грузится будет лимитированно все

Nikita
06.06.2017
14:09:43
да, я говорю из коробки в rom-sql

Anton
06.06.2017
14:09:45
у меня где-то так написано во всяком случае
а, ну прямо из коробки нет

Nikita
06.06.2017
14:09:58
чтобы с блэкджеком

Anton
06.06.2017
14:10:04
но написать не проблема, я так экспортирую по 100 записей за раз