
Kirill
10.09.2018
07:28:56
да, сорри, что-то с просони ерунду написал какую-то

Александр
10.09.2018
07:28:57
шифрованные данные нужно передавать через https :)

Felix
10.09.2018
07:29:30

Sergey
10.09.2018
07:29:52

Google

Kirill
10.09.2018
07:30:07
да
скорее всего
я ещё сплю :D

ss
10.09.2018
09:13:14
Блять сорян, уродский телефон сам отправил хуету

Dmitriy
10.09.2018
09:13:29
Еще один хардскилл для того чтобы считаться синьером?
а

ss
10.09.2018
09:13:51
Да ну нахуй бля епт

Антон
10.09.2018
09:14:31
слишком много позитива

Denis
10.09.2018
11:09:09
Кто знает как через postman посылать файлы чтобы они принимались как ActionDispatch

Andrey
10.09.2018
13:04:27
Приветствую, взялся поизучать Ruby, поэтому такой вопрос — какие есть у Ruby хорошие REPL (пока использую Pry)? В частности очень неудобно что когда жмешь вверх, чтобы вернуть предыдущую строку, то возвращается именно 1 строка, а не блок кода. В этом плане очень удобно в ptpython.
Может что-то в конфиге того же Pry можно поправить?

Антон
10.09.2018
13:31:26
Не совсем в тему, но дебага можно избежать чуть менее чем полностью, если разрабатывать через TDD

Andrey
10.09.2018
13:33:31

Google

Andrey
10.09.2018
13:34:15
(если сообщение выше адресовано мне конечно ;))

Антон
10.09.2018
13:46:04
согласен, было бы удобнее возвращать блоки, или опционально
edit -p - может быть поможет быть

Andrey
10.09.2018
13:55:37
Хах, прикольно. Спасибо, так уже лучше!

Кøе-ктø Геннадьевич
10.09.2018
14:03:46
как называется компания? кажется мой коллега работает у вас
Голландцы?

Anton
10.09.2018
14:03:59

Артур
10.09.2018
14:04:01
Низя здесь про работу, ну

Eugene
10.09.2018
14:04:59
Другие чаты или rubyjob.

Liana
10.09.2018
14:06:28

Igor
10.09.2018
14:42:28
ложь

Денис
10.09.2018
14:42:36
false

Nikita
10.09.2018
14:42:49
Хух, как хорошо, что это не реклама!

Ilya
10.09.2018
14:44:40

Смерть
10.09.2018
16:02:31
Маленький вопросик по code style. У меня есть длинное условие для where. Оно в строке, куда нужно подставить параметры. Как мне сделать, чтобы .where('my long string', p1,p2) выглядело нормально?

No
10.09.2018
16:06:13
where('my long string :param_name1 OR :param_name2', param_name1: p1, param_name2: p2)

Смерть
10.09.2018
16:08:07
Да. У меня просто сама длинная строка огромная выходит
почти на 100 символов
Ладно, просто вынес в переменную

Google

mike
10.09.2018
16:12:43
Можно в несколько строк написать, но красивее не станет

Amir
11.09.2018
05:02:02
Кстати ребята а как вы пишите сложные сочетания OR AND
не говоря уже с joins-ами

Vitaly
11.09.2018
05:03:34

Amir
11.09.2018
05:04:17
например такую
where
active = true and (public = true OR created_at > :date)
хочу видеть чисто на ORM

Vitaly
11.09.2018
05:04:47

Amir
11.09.2018
05:05:53
максимум два условия

Vitaly
11.09.2018
05:17:28

Amir
11.09.2018
05:17:52

Vitaly
11.09.2018
05:18:22
я имею ввиду то о чем ты говорил - много условий, то есть сложный запрос

Amir
11.09.2018
05:18:56
а все понял, все просто оказывается

Vitaly
11.09.2018
05:26:49
если что, вот тут много примеров
https://guides.rubyonrails.org/active_record_querying.html


Amir
11.09.2018
05:29:09
если что, вот тут много примеров
https://guides.rubyonrails.org/active_record_querying.html
Я понял примерно вот что
qwe = Rubric.where(active: true).or(Rubric.where(created_at: Time.now))
qweqwe = qwe.joins(:postings).where(postings: { status: 1 } ).where(public: true)
Результат
SELECT "rubrics".* FROM "rubrics" INNER JOIN "postings" ON "postings"."rubric_id" = "rubrics"."id" WHERE ("rubrics"."active" = $1 OR "rubrics"."created_at" = $2) AND "postings"."status" = $3 AND "rubrics"."public" = $4 LIMIT $5
И такое заклинанеие надо писать столько сколько нужно по логике
Остается только надеяться что РЕАЛЬНЫЙ запрос выполняется только в конце :)
иначе будет кердык базе
Ребята мне теперь нужна такая лабуда
Есть некий справочник, у него должен быть уникальный код, НЕ токен, НЕ GUID
а что-то типа
А00000123
уникальный
и оно должно генерироваться автоматом при создании записи
как не допустить коллизий при генерации КОДа, если одновременно будут не дай бог
присобачить в before_create c loop что-то типа self.code.succ ?
тем более надо еще инкрементировать начиная с последней


Andrey
11.09.2018
05:35:37
Наверное что-то типа такого поможет

Google

Andrey
11.09.2018
05:35:38
https://www.leighhalliday.com/avoid-race-conditions-with-postgres-locks

Amir
11.09.2018
05:35:54
Надо получить последний элемент
генерировать следующий code.succ
а за это время паралельно мог уже появится новая запись с новм кодоам

Anton
11.09.2018
05:42:56

Юрий
11.09.2018
05:56:23
"A%08d" % self.id

Admin
ERROR: S client not available

Юрий
11.09.2018
05:57:39
или инкремент свой должен быть?

Amir
11.09.2018
06:23:18

Andrey ?
11.09.2018
06:25:46
А постгресовские PK автоинкрементные чем не устраивают?

Amir
11.09.2018
06:25:59
просто уникум
и привязать логику конкретно к БД особо не хочу

Andrey ?
11.09.2018
06:26:53
Чем не устраивает постгресовский праймари кей? Который id

Amir
11.09.2018
06:27:12
а мне надо что-то типа кода
А000123
Б000001

Andrey ?
11.09.2018
06:28:16

Anton
11.09.2018
06:29:52
Вот (:
А «Б00хх» как тут сделать?
Вообще, идеально просто в транзакцию завернуться, сделать просто и забить

Andrey ?
11.09.2018
06:30:24
Например, первые 10000 - А, вторые - Б и так по очереди?

Andrey
11.09.2018
06:30:34
3454363410.to_s(36) ;)

Google

Andrey ?
11.09.2018
06:31:04

Anton
11.09.2018
06:32:37
Вообще, все зависит от того, какого вида эта строка нужна

Антон
11.09.2018
06:38:37
да еще и кирилицей

Andrey ?
11.09.2018
06:38:57

mr.Serj
11.09.2018
06:39:16
а зачем такое?
Кажется уйти от числовых ид, но смысла в такой логике нет

Антон
11.09.2018
06:39:20

mr.Serj
11.09.2018
06:39:23
Если там не рандом

Антон
11.09.2018
06:39:26

Andrey ?
11.09.2018
06:40:03
Можно весьма просто обычный числовой айдишник конвертировать в такие, но тут все упирается в «зачем?», опять же)

Антон
11.09.2018
06:40:18
да... "зачем?" все портит всегда

Andrey
11.09.2018
06:40:35
Возможно, в номер документа или что-то типа того

Антон
11.09.2018
06:40:45
в 1С-ку
даже рубист не может полностью избавиться от одинэски