
Gregory Tereshko
02.07.2018
13:24:02
Или плейн sql тоже не робит

wi11son
02.07.2018
13:24:19
я бы еще вот это попробовал json_populate_record
а постгрес какой?

Gregory Tereshko
02.07.2018
13:24:56
9,6

Google

wi11son
02.07.2018
13:26:16
а какой экстеншн используешь для jsonb?

Gregory Tereshko
02.07.2018
13:27:36
Ничего дополнительно не сетапил. Из коробки все

wi11son
02.07.2018
13:28:41
попробуй ту же выборку но из консоли постгресса

Gregory Tereshko
02.07.2018
13:31:00
Походу все же jsonb надо установить
ERROR: function jsonb_array_elements(json) does not exist

Смерть
02.07.2018
13:31:56

Gregory Tereshko
02.07.2018
13:33:11
А, ну вот
select json_array_elements(form_data) from registration_requests;
ERROR: cannot call json_array_elements on a non-array
Типо у меня ж там не массив, а жусон

Смерть
02.07.2018
13:44:56
SELECT id, (ARRAY(SELECT json_object_keys(form_data))) FROM registration_requests;
так должно работать

Gregory Tereshko
02.07.2018
13:50:38
Круто. Работает. Спасибо. А как это теперь более читаемо на рельсах написать?
https://i.imgur.com/BjG3DAV.png
А то чет так не получается
И как-то нужно сделать distinct по найденным записям
Сейчас вот так
https://i.imgur.com/iR4g419.png

Alex
03.07.2018
07:48:30
Ребята, привет! На сайте есть возможность отправки сообщений. Шаблоны хранятся стандартно(скрин). Просят сделать возможность редактирования шаблона письма(прям в существующей админке чтоб можно было html писать). Подскажите пожалуйста, кто делал что-то подобное? Это ведь надо хранить шаблон в бд я так понимаю, вкрутить нормальный редактор. Подскажите что почитать может и насколько это трудозатратно?

Google

Alex
03.07.2018
07:48:34

Сергей
03.07.2018
07:56:25
Вопрос: во вьюхе есть форма с фильтрами и 1 кнопкой запуска поиска Search. Добавил к этой форме кнопки, меняющие фильтры и запускающие поиск, но теперь при нажатии enter в фильтре запускается не кнопка search, как раньше, а новая кнопка, меняющая фильтр. Как мне ограничить форму - вынести новые кнопки управления фильтрами и запуском процесса поиска в другую форму?

Felix
03.07.2018
07:58:11

Octoloper
03.07.2018
08:04:23

Felix
03.07.2018
08:05:06
да и в чем проблема иметь >1 кнопки в форме?

Сергей
03.07.2018
08:05:14

Zamira
03.07.2018
08:06:12

Сергей
03.07.2018
08:07:09

Felix
03.07.2018
08:07:24

Сергей
03.07.2018
08:13:01
<button type="button"
А как тогда запускать процесс поиска при нажатии новых кнопок, если будет button вместо submit?

Felix
03.07.2018
08:16:22

Сергей
03.07.2018
08:21:37

Dmitriy
03.07.2018
08:41:45
всем привет! нид хелп с запросом скл https://gist.github.com/dimaskin/39d7e2473ce49def318be1ed541154a7#file-ms_sql
сделал с помощью временных таблиц, но так по условию нельзя (как и курсоры использовать)

Sergii
03.07.2018
10:44:04
сгрупировать по клиентид, min purchase_month
ну и вопрос с годом встанет потом )
SELECT client_id, min(purchase_month) as purchase_month FROM orders1
group by client_id;

ojab
03.07.2018
11:35:31
не?
а, там дублирование ещё убрать надо

Google

ojab
03.07.2018
11:43:33
что только люди не делают, лишь бы postgresq не использовать

Dmitriy
03.07.2018
11:43:57
не?
погуглю, что за stuff, но не .. для 5 месяца все новые (т.к. нет 4) -> (1,2 | 5), для 6 месяца новый только 3 -> (3 | 6), т.к. 1 ид был в 5мес, для 7 новые 4 и 5 -> (4,5 | 7), т.к. 1 был в 5 и 6, 2 в 5 мес, для 8 -> 6, т.к. нигде не было

ojab
03.07.2018
11:49:19
http://sqlfiddle.com/#!18/0b363/30
ужасы какие

Dmitriy
03.07.2018
11:55:40
так я и сам сделал :) без курсоров и темп таблиц надо

Oleg
03.07.2018
12:04:46
Привет
Такая задача - нужно парсить html и доставать теги h, важно сохранять структуру, то есть первым вхождением может быть h3 а не h1(как должно быть..заморочки в seo)
Собственно вопрос - можно ли с помощью nokogiri передать в search метод регулярку? Может кто-то сталкивался с таким, спасибо )

Aleksey
03.07.2018
12:16:36
гугли CSS / Xpath селекторы

Sunny
03.07.2018
12:17:06
звучит сомнительно

mr_makss
03.07.2018
12:18:01
xpath или css вэй

Sunny
03.07.2018
12:19:03

Oleg
03.07.2018
12:19:36
Ищу что-то типа - doc.xpath(/h[1-6]+/)

Иван
03.07.2018
12:20:48

Sunny
03.07.2018
12:22:13

mr_makss
03.07.2018
12:23:00
@*

Denis
03.07.2018
12:35:00

Ilya
03.07.2018
12:36:06
https://activeadmin.info/8-custom-actions.html

Denis
03.07.2018
12:37:15
Спасибо

Богдан
03.07.2018
12:45:49
Господа, а не подскажите, в миграции рельсы, можно индекс поменять, или нужно удалять старый и создаваьть новый?

Roman
03.07.2018
12:48:15
Как понять поменять индекс?

Google

Ilya
03.07.2018
12:53:17

Богдан
03.07.2018
12:53:20
сейчас, вот такой индекс
t.index %i(pair_id close_time), unique: true
а нужен такой
t.index %i(pair_id ), unique: true

Roman
03.07.2018
12:54:43
Я думаю для начала стоит понять, как работают индексы
Это два разных индекса у тебя

Богдан
03.07.2018
12:56:13

Roman
03.07.2018
12:56:31
Ну ненужный удалить, нужный добавить
Ты можешь добавить и тот и другой, если есть такой кейс

Admin
ERROR: S client not available

Roman
03.07.2018
12:58:40
Почитай про explain в постгресе
Она поможет понять, какие индексы нужны

Богдан
03.07.2018
13:01:39
очень удобная штука, что бы инсертить или обновлять записи при наличии
жаль, что а AR этого нету, нужно все конструкции вручную прописывать

Oleg
03.07.2018
13:47:30
По поводу отображения структуры html
Получилось вот так:
doc = Nokogiri::HTML(html)
res = Hash.new
doc.traverse do |node|
if node.name =~ /^h[1-6]+$/
res[node.name+' - '+node.id.to_s] = node.text
end
end

Антон
03.07.2018
13:49:55

Богдан
03.07.2018
13:51:45
вот даже на тостере когда-то спрашивал
https://toster.ru/q/501050

Антон
03.07.2018
13:58:35

Google

Антон
03.07.2018
13:59:34
ну и на тостере специалист по бд, а не по бизнес логике

Богдан
03.07.2018
14:34:37

Антон
03.07.2018
14:35:40
с другой стороны, бизнес логике может быть не офигенно, если в базе уже есть экземпляр, но системе об этом не известно
но если у нас on conflict то да, окей, нет ничего страшного, процессы не поплыли (sarcasm)

Богдан
03.07.2018
14:37:52
а почему не известно, я например вот так свои запросы делаю
https://pastebin.com/zt08bUVk

Антон
03.07.2018
14:39:38
и это совсем не рейлс вей

Богдан
03.07.2018
14:41:11
ну зато в одном CTE я могу сразу вставить записи, потом по тех записях которые я вставил могу в других запросах тут же использовать, думаю что там более оптимизировано и код выходит более читабельней

Антон
03.07.2018
14:41:55
там где? что оптимизированно? что читабельней?

Богдан
03.07.2018
14:45:08
там сделано одним CTE, тоесть одним обращением к базе, а не 4 запроса, как в примере, потом база я оперирую только данными которые реально менялись в рамках запроса, например сделал в ставку данных, потом на основе этой вставки нужно в дочерней таблице тоже сделать вставку - и тут нет проблем

Антон
03.07.2018
14:45:48
а эта оптимизация не нужна в общем случае

Богдан
03.07.2018
14:46:40
вот к примеру массовая вставка в главную таблицу и подчиненную как сделать? Заранее же я parent.id не знаю что бы можно было сделать запрос на вставить запрос в подчиенную таблицу
тут приходилось сначала делать массовую вставку у главную таблицу, получать id, и потом уже в цыкле формировать запрос на всавку в подчиненную

Антон
03.07.2018
14:47:35
для разовых случаев, окей, эта оптимизация _может_ оказаться полезной

Богдан
03.07.2018
14:48:32
https://toster.ru/q/484621

Антон
03.07.2018
14:49:11
и?

Богдан
03.07.2018
14:49:46
ну я сразу стараюсь писать оптимизированный код, AR уже безумно отстал от Postgres, там банальные вещи уже не сделать, типа DISTINCT ON

Антон
03.07.2018
14:50:26
а вы не думали, что тем самым повышаете стоимость владения системой?

Богдан
03.07.2018
14:50:48
почему?

Антон
03.07.2018
14:51:13
потомо что кто-то после вас должен знать SQL на вашем уровне
и как ваши запросы тестировать я тоже плохо представляю

Богдан
03.07.2018
14:52:07
ну так, может вообще перейти на процедурное программирование, потому что тот что после меня может не уметь работать с классами )))