
Владимир
23.03.2018
12:45:57
и отдает в ущербе под свои твердые рамки

Roman
23.03.2018
12:46:04
ну с такой логикой тогда уж graphql какой-нибудь юзать, тогда фронту вообще будет сказка

Vasiliy
23.03.2018
12:46:14
воооот

Владимир
23.03.2018
12:46:26
вот и я говорю что обрабатывай как хочешь а отдавай уже как считаешь нужным

Google

Vasiliy
23.03.2018
12:46:34
жсонапи как раз типа графкуэла

Владимир
23.03.2018
12:46:46
и бекенду плевать и вронту не заморвчиватся
я думаю выдачу етого гема можно без проблем разобрать и собрать как нужно тебе
если уж так стоит у тебя на автоматизацию запроса
хотя это дичь.
вешать обработчик АПИ на сторонее решение
у них там какя-то дырка размером с глобус, а ты рад что меньше по клаве стучать
а потом проебы за проебами
чего уж, давайте WP использовать, программисты не нужны. устарели.

Vasiliy
23.03.2018
12:49:06
ну как-бы тут надо понять не проблема ли в человеке для начала, а то один сказал не смог а остальные - технология гавно

Владимир
23.03.2018
12:51:15
на рубях обычно пишут отнюдь не лендинги о котиках
странно что все так радеют за повальную гемизацию
как по мне нормальная практика когда под проект даже используемый гем прочесывают из края в край, убирают что то ненужное или расширяют что надо и только потом внедряют

Vasiliy
23.03.2018
12:53:21
@Qew7777 а че ты кстати как белый человек ams не заюзал(https://github.com/rails-api/active_model_serializers/blob/v0.10.6/docs/general/adapters.md#json-api) а взял отдельный гем?

Максим
23.03.2018
12:53:34
им пользовались коллеги в прошлый раз

Roman
23.03.2018
12:53:34

Google

Максим
23.03.2018
12:53:38
и ничего тоже лучше не стало
как отсылать джсонапи так чтоб создавать например сразу и здание и квартиру в нём и фото этой квартиры мы так и не поняли
одним запросом

Владимир
23.03.2018
12:54:32

Igor
23.03.2018
12:55:21

Максим
23.03.2018
12:55:35
но необходимая бизнесу задача
почему рельсы так могут своим обычным джсоном
а ведь в рельсах конвеншн овер конфигурейшн

Igor
23.03.2018
12:56:05
Потому, что рельсы не rest )

Максим
23.03.2018
12:56:09
нахуя стандарты которые мешают разработке а не упрощают

Владимир
23.03.2018
12:56:10
как по мне если уж клиент платит за качество, то не наговнокодить что то на гемах за ночь до дедлайна, а нормально поработать

Максим
23.03.2018
12:56:33
мазохизм

Igor
23.03.2018
12:56:39
В rest в таком случае создаётся псевдо ресурс объединяющий здание+квартира+котики

Владимир
23.03.2018
12:57:10
хотя яву как поэму можно читать по стандартам изним))

Igor
23.03.2018
12:57:32
мазохизм
Программирование и мазохизм часто идут рука об руку

Владимир
23.03.2018
12:57:57

Максим
23.03.2018
12:58:14
программировать можно без мазохизма

Владимир
23.03.2018
12:58:16
может создадим отдельный паблик шипы и томаты там?)) под такое дело..

Roman
23.03.2018
12:58:36

Google

Владимир
23.03.2018
12:58:37
в теории все так

Alex
23.03.2018
12:59:31

Владимир
23.03.2018
12:59:35

Alex
23.03.2018
12:59:42
там вроде можно было, но не уверен
и да, создать несколько сущностей одним запросом это не REST

Владимир
23.03.2018
13:00:10
можно
еще один кандидат на членство в закрытом клубе)

Alex
23.03.2018
13:00:25
на первом проекте его засунул и пожалел.

Roman
23.03.2018
13:00:58

Владимир
23.03.2018
13:02:17
и им ты можешь долго расказывать потом "ето тут так не принято"
тебе никогда видать просто отчет о проверке кода не приходил файлом в 300 страниц pdf
с вопросами.
благо удалось спрыгнуть на онлайн разъяснение и потом в микрофон неделю хрипеть
каждому свое))

Lavrushchik
23.03.2018
13:27:55
вопрос. с ransack такая ерунда.
пуляю в запрос что-то вроде "count_in"=>["3"] и count_gteq"=>"4"
по отдельности это работает.
в спарке - нет. есть какие-то пути решения?

Nikita
23.03.2018
13:29:16
а count чему равно то?
и какой на все это рансак генерирует sql?

Lavrushchik
23.03.2018
13:32:53
рансак генерит "count" IN (3) AND "count" >= 4

Александр
23.03.2018
13:45:14
Допустим, одно пересечение я могу получить следующим способом (второе аналогично)
user.favorite_users

Google

Александр
23.03.2018
13:47:49
Этот скоуп превращается в
User.joins(:favorite_items).merge(FavoriteItem.where(user_id: user.id))
Ну или так
User.joins(:favorite_items).where('favorite_items.user_id': user.id)

Nikita
23.03.2018
13:50:42

Александр
23.03.2018
13:51:53
Есть, конечно, решение, но хз, чую, что лучше можно сделать
User.where(id: user.viewed_items.where(viewable_type: 'User')
.select(:viewable_id)
.distinct))
.or(User.where(id: user.favorite_items.where(favoritable_type: 'User')
.select(:favoritable_id)
.distinct))
Явно нужно arel использовать, но пока ума не хватает

Lavrushchik
23.03.2018
13:53:58

Nikita
23.03.2018
13:54:48
слушай, ну вот ты смотришь на этот sql
"count" IN (3) AND "count" >= 4
он тебе как, норм?
число должно быть 3 и больше или равно 4

Lavrushchik
23.03.2018
13:57:52
хорошо, как OR сделать?

Nikita
23.03.2018
13:58:21
"count" IN (3) OR "count" >= 4
вроде очевидно, не?

Igor
23.03.2018
13:58:59
Хм, "count" >=3

Nikita
23.03.2018
13:59:12
http://joxi.ru/YmENJ1Ku0QBE12
вот просто минуту потратил
реально
открой доки, посмотри

Lavrushchik
23.03.2018
13:59:30
дока и у меня открыта

Nikita
23.03.2018
13:59:41
и ты не видишь _lt_any?)

Google

Lavrushchik
23.03.2018
13:59:41
мб в силу не особо знания инглиша что-то могу упустить

Nikita
23.03.2018
14:00:00
но в твоем случае _gt_any

Lavrushchik
23.03.2018
14:00:28
это вместо
count_in: [3] и count_greq: 4
будет
count_in: [3] и count_gteq_any: 4
так?

Nikita
23.03.2018
14:00:29
*_gteq_any точнее
count_in: [3] и count_gteq_any: 4

Lavrushchik
23.03.2018
14:00:50
вот, да

Nikita
23.03.2018
14:00:54
да, пробуй так

Lavrushchik
23.03.2018
14:00:59
принял

Nikita
23.03.2018
14:01:04
просто ты же по сути сам ответил на свой вопрос
"count" IN (3) AND "count" >= 4
тебя это должно было смутить

Lavrushchik
23.03.2018
14:18:18

Nikita
23.03.2018
14:18:25
sql какой?

Lavrushchik
23.03.2018
14:18:37
("properties"."count_of_rooms" IN (3) AND ("properties"."count_of_rooms" >= 4))
скобки добавились
тот же and вылазит

Nikita
23.03.2018
14:23:23
@lwwwrjke http://joxi.ru/J2b3bN6hXpgjlA
доки точно читал?)
делаешь все тоже самое, но в контроллере мержишь к параметрам m: ‘or’

Максим
23.03.2018
14:27:55
у меня новая цель в жизни