
ojab
21.09.2016
16:02:20
почему?

Igor
21.09.2016
16:02:58
во вторых одино правило используется на много записей
тупо дедупликация

ojab
21.09.2016
16:03:46
опять непонятно почему это нельзя вынести на уровень приложения и пользоваться стандартным sql

Google

ojab
21.09.2016
16:04:01
какой у этой конструкции вообще юзкейс?

Igor
21.09.2016
16:04:12
фильтрация контента
авторизация контента точнее :)
пользователям с айоса показывать это
с андроида не показывать
например
но там по сути бизнес правила
которые менеджеры сами правят

Mikhail
21.09.2016
16:05:21
сложна

Igor
21.09.2016
16:05:37
а то

Mikhail
21.09.2016
16:06:13
тока я так и не понял, если ты авторизируешь юезар по языку и его устройству нафига тебе в бд json держать
все же напрямую можно достать из реквеста
платформу и гео

Google

Igor
21.09.2016
16:06:40
в БД правила хранятся

Mikhail
21.09.2016
16:07:10
не пойму зачем
['==', '$platform', 'android']
вот правило не пойму зачем его катать в бд

Igor
21.09.2016
16:07:51
а где его хранить?

Mikhail
21.09.2016
16:08:02
логикой
исходя из текущей ситуации применяй нужны правила

Igor
21.09.2016
16:08:13
и где эту логику держать?

Mikhail
21.09.2016
16:08:33
Какую именно?

Igor
21.09.2016
16:08:45
показывать или нет

Mikhail
21.09.2016
16:08:46
в сервис вынеси логику

Igor
21.09.2016
16:08:54
ну заебись
и у меня ляжет сервис от 10 RPM
и как мне определять что для этого контента использовать эту логику
а для того вот ту логику

Mikhail
21.09.2016
16:10:16
сложна обьясняешь
но суть уловил
ты просто хранишь конфиг
чем jsonb не угодил
обычно туда конфиги складывают

Google

Mikhail
21.09.2016
16:11:07
нотификации и прочую дрянь

Igor
21.09.2016
16:11:08
ну это не конфиг

Mikhail
21.09.2016
16:11:14
ну как не конфиг

Igor
21.09.2016
16:11:33
хотя с очень большой натяжкой можно и так назвать

Mikhail
21.09.2016
16:11:37
Ты хочешь сказать что ты хранишь куски кода и вставляешь динамически куда то

Igor
21.09.2016
16:11:44
ну как презерватив на голову натянут

Mikhail
21.09.2016
16:11:46
типа функции высшего порядка

Igor
21.09.2016
16:11:48
вот с такой натяжкой
там не конфиг
а бизнес-логика
в БД

Mikhail
21.09.2016
16:12:07
я не уловил профит

Igor
21.09.2016
16:12:14
в виде AST дерева
профит в том что контент-менеджеры могут менять на лету
плюс нагрузка на БД низкая
из-за матчинга постгресовых интовых массивов

Mikhail
21.09.2016
16:12:56
сколько у тебя RPM

Igor
21.09.2016
16:12:58
потому-что есть GIN индексы
до 30К в пике

Konstantin
21.09.2016
16:13:30
точеной

Google

Mikhail
21.09.2016
16:13:50
и ты с каждым запросом достаешь из бд эти правила

Igor
21.09.2016
16:13:51
дроченой

Mikhail
21.09.2016
16:13:54
и подставляешь нужные

Igor
21.09.2016
16:14:00
да

ojab
21.09.2016
16:14:04
он не достаёт из бд правила
оу

Mikhail
21.09.2016
16:14:16
он говорит что достает

ojab
21.09.2016
16:14:19
тогда всё ещё более непонятно

Mikhail
21.09.2016
16:14:27
и типа через лиспу по дереву ему быстрее выполнить
чем прогнать сложную логику

Admin
ERROR: S client not available

Mikhail
21.09.2016
16:15:00
и этим ты снижаешь нагрузку бд
?

ojab
21.09.2016
16:15:14
я думал процедурой в бд делается

Mikhail
21.09.2016
16:15:18
тут надо понимать и задачу и решение

Igor
21.09.2016
16:15:30
есть отдельная таблица правил

Mikhail
21.09.2016
16:15:31
так еще больше непонятно

Igor
21.09.2016
16:15:43
в контенте есть ссылки на эти правила
ввиде массива прямо в каждой записе
integer array

Google

Konstantin
21.09.2016
16:16:12
https://github.com/uraimo/5110LCD_PCD8544.swift

Igor
21.09.2016
16:16:43
Костя как бы намекает
чтобы я не пиздел лишнего :D

Konstantin
21.09.2016
16:17:07
совсем нет

Mikhail
21.09.2016
16:17:16
то есть у тебя твои контент менеджеры генерят правила для контента
ты их всегда получаешь и сравниваешь есть ли у юзера в табличке правил доступ

Igor
21.09.2016
16:18:09
ja ja

Mikhail
21.09.2016
16:18:17
и профит в том, что ты правила пандита затолкал в таблички и на ходу манагер может баловаться
ну это грубо
идея ясна

Igor
21.09.2016
16:18:53
очень грубо, но да

Mikhail
21.09.2016
16:19:07
ну круто че)
столько человекочасов убито)

Igor
21.09.2016
16:19:53
соль именно в том что я могу фильтровать по этим правилам прямо в БД
мы просто походу о разной авторизации говорим :)

Sergey
21.09.2016
16:23:43
это нормально в полиморфик модели, в поле *_type хранить 'HomePage'(такой модели нет), и в экшне для главной странички Делать так, Review.where(*_type: 'HomePage')?

Igor
21.09.2016
16:23:59
Нет
Правильно поменять в модели inheritance_column
Либо использовать другое название поля
Например *_kind

Sergey
21.09.2016
16:27:32
ну так понятней) спасибо

Danila
21.09.2016
16:55:36
а кто нибудь сидит на руби митапе в рамблере сейчас?

Кøе-ктø Геннадьевич
21.09.2016
16:57:16
а где вообще можно узнавать о событиях?