@proRuby

Страница 582 из 1594
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
как ты ILIKE в АР делаешь?
where('post.title ILIKE %?%', something) Типа такого

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

и к репозиторию тут отношения мало

Vasiliy
06.06.2017
13:43:54
но ведь это вкусовщина как с бд работать жи

если грамотно писать везде можно нахуевертеть

Anton
06.06.2017
13:44:40
но ведь это вкусовщина как с бд работать жи
да, только мы про 2 паттерна говорили разных

Google
Anton
06.06.2017
13:44:46
ну хорошо, вопрос тебе

почему у тебя в модели User есть класс методы, а есть инстанс методы?

почему у тебя модель знает о том, как в базу сходить и как для инстанса данные обработать?

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

Alex
06.06.2017
13:46:25
почему у тебя в модели User есть класс методы, а есть инстанс методы?
потому что класс методы возвращают инстансы у которых свои методы.

Вопрос не очень понятен

Anton
06.06.2017
13:46:31
у ханами же бедная экосистема(нет?) и плюс - чем он прям лучше рельсы, киллер фича?
1 вопрос - нет, ты можешь делать все тоже самое что и на рельсе. там разве что auth руками пистаь придется, но имхо это лучше чем дивайс

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

Anton
06.06.2017
13:46:43
Вопрос не очень понятен
почему у тебя 1 класс знает про 2 вещи

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
почему у тебя модель знает о том, как в базу сходить и как для инстанса данные обработать?
потому что ActiveRecord шаблон именно так и работает, мы _допускаем_ что в базе есть то что мы юзаем в коде и с этим работаем

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: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
но ведь ханами это не датамаппер же и рельса не АР

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

Anton
06.06.2017
13:54:09
что-то мешает использовать form object, view object и пр.? или смотрим на решение из коробки только?
ничего, только супер вопрос, кто из вас использует в рабочем приложении вью объекты?

:)

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

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

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
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
нахера брать ханами если можно взять синатру, к примеру, и так же поставить архитектуру самому?

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

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

это разные все таки вещи :)

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
мне пока не ясно можно ли делать аналог find_each?
прямо из коробки нельзя, там есть определенные проблемы с этим, в 4.0 будет, я сделаю, потому что проблемы эти уже устранены

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 записей за раз

Страница 582 из 1594