
Darth
23.04.2018
12:02:46

Артур
23.04.2018
12:04:30

KEPLER2B
23.04.2018
12:04:36

Богдан
23.04.2018
12:05:32

Google

KEPLER2B
23.04.2018
12:06:34
у меня так и решено внутри api есть namespace public туда помещено все что не требует авторизации

Aleksey
23.04.2018
12:07:38
как вариант. хотя без контекста я не уверен что делить контроллеры только по признаку доступности неавторизованным юзерам - это такая уж хорошая идея. обычно контроллеры делят экшены по каким-то более конктретным вещам

Богдан
23.04.2018
12:09:48

Roman
23.04.2018
12:11:10
кто-то поднимал проксю для телеги через dante-server? не было такого, что постоянно висит connecting to proxy?

ojab
23.04.2018
12:16:31
казалось бы, при чём здесь ruby. Proxy недоступен, очевидно. telnet vpn.example.com 1080 проходит?

Sergei
23.04.2018
12:22:50

Roman
23.04.2018
12:24:17
Я выяснил, что он работает с wifi, а с 4g такая беда
Но ладно, это и правда оффтоп

Nikita
23.04.2018
12:36:43
бд в кодировке cp1251, не понимаю почему при инсерте, boolean type например если это false, то отсылается x'66616c7365'
не понимаю конкретно что за дичь)
а если true то это x'74727565'
как вообще rails понимает что нужно отправлять именно так значение конкретного поля
если это стринг то все ок, если инт, все отлично, если в Boolean я поставлю 0, то он отправит x'30'

Google

Nikita
23.04.2018
12:57:39
как мне rails заставить Boolean конвертить не в bit а в tinyint
при инсерте оного

KEPLER2B
23.04.2018
13:02:23
проблем скорее всего глубже, чем просто конвертация, что то не так с настройкой БД , или active record, решать простой конвертацией и костылями видется мне не лучшим выходом, вобщем нужны подробности, так, сходу сказать в чем проблема - сложно
что за бд?

Lavrushchik
23.04.2018
13:10:08
вопрос.
хочу распарсить страницу. открываю в браузере - js подгружает откуда-то данные. в source-code этих данных нет, в инспекте - есть.
вопрос - как мне через curb открыть страницу а-ля "смотрю в браузере и js подгрузил данные, которые я вижу в инспекте"?

Sergii
23.04.2018
13:13:35
Надо где-то выполнить тот жс, я помню только phantomjs который умел, но я никогда его не звал из руби.
Под курб - надо разбираться откуда зовутся данные, и готовить запрос, что б всякие куки и токены приехали в него валидные.

KEPLER2B
23.04.2018
13:16:29

Nikita
23.04.2018
13:17:35

KEPLER2B
23.04.2018
13:18:22
?
ничего странного именно исходя из этого вывода rails преобразовывает типы при записи
Model - тут ваша модель которая генерирует проблему

Nikita
23.04.2018
13:40:16
через model

hotline
23.04.2018
13:42:54
Здравствуйте! Кто работал с geocoder и geokit-rails? Можно попросить примеры конфигов?

KEPLER2B
23.04.2018
13:45:13

Nikita
23.04.2018
13:46:23
проблема в том, что в бд это поле определяется как Boolean, но версия mysql не новая и платформа тоже далеко не новая
но я точно знаю если отправить в таблицу именно 1 или 0 то она воспримет это как Boolean
трабл именно в том что сами рельсы конвертируют поле в bin

KEPLER2B
23.04.2018
13:47:27
на самом деле ни разу этим не занимался, сегда предпочитал разрабатывать архитектуру БД с 0, даже если есть текущие данные, создавал миграционный скрипт который переносил данные и вуаля

Google

Nikita
23.04.2018
13:48:28
я бы не хотел с нуля создавать 1000+ тейблов)) хоть и модели приходится создавать самому
платформа - аналог 1С но со своими фишками и средой разработки
я просто строю микросервис с вытягиванием-инсертом некоторых данных
и вот инсерт дает мне такую беллиберду)

KEPLER2B
23.04.2018
13:50:08
ну так сделайте что то типа
def attribute=value
self.attribute = value.class.name == "TrueClass" ? 1 : 0
end
но это действительно надо эксперементировать
я не поручусь за код
тут рекурсия скорее всего

Pavel
23.04.2018
13:51:20
1000+ таблиц в rails. круть. Наверное от rails там уже ничего и не осталось.

KEPLER2B
23.04.2018
13:52:33
Там и не было
речь о навешивании рэйлс поверх кухни
вообще в вашем случае сугубо кастомное решение должно быть, rails предусматривает безпроблемную работу со своей сруктурой, в противном случае - сплошной головняк

Nikita
23.04.2018
13:54:52
пока что это единственный головняк))

Nikita
23.04.2018
13:55:00
у меня реальсы это чисто апи
с graphql
играет роль шлюза по большей части

KEPLER2B
23.04.2018
13:58:11
ну тогда кастомными методами, скорее всего текущий mysql адаптер "не понимает" типы данных вашей древней mysql БД Или что еще пошло не так)))

Nikita
23.04.2018
13:59:33
у меня есть
но он не генерирует все)
кое что надо прописывать руками

Google

KEPLER2B
23.04.2018
14:05:01
связи - как водится
кстати вариант: а почему не повесить предварительную конверсию на before_action?
хотяя..... там на уровне контролера будут свои танцы

Александр
23.04.2018
14:09:35
Извиняюсь за кол-во текста, но есть такая штука :
ActiveRecord::InvalidForeignKey (PG::ForeignKeyViolation: ERROR: update or delete on table "jobs" violates foreign key constraint "fk_rails_9f20af2f7d" on table "job_bids"
DETAIL: Key (id)=(34) is still referenced from table "job_bids".
: DELETE FROM "jobs" WHERE "jobs"."id" = $1):
В модели job.rb стоит
has many bids dependent: :destroy
В чем может быть проблема?

Marsel
23.04.2018
14:10:33
on delete не указан видимо

KEPLER2B
23.04.2018
14:10:54
или необязательность связи
belongs_to :references, required: false
позволяет существовать "рваным" связям, но будте осторожны

Admin
ERROR: S client not available

KEPLER2B
23.04.2018
14:12:51
все связанное с этим прийдется решать ручками

Александр
23.04.2018
14:13:40

ojab
23.04.2018
14:13:53
@nottewae https://github.com/rails/rails/blob/master/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb#L21
так что если сменить binary на tinyint — должно работать
или переопределяй binary, но тогда возможны всякие иные проблемы
ибо см. чуть ниже, binary это blob

KEPLER2B
23.04.2018
14:16:41
и не дайто бог где то в БД есть реально binary

Nikita
23.04.2018
14:16:56
:)

KEPLER2B
23.04.2018
14:18:20
суть я так понял в том что адаптер таки пишет его как binary
значит что он binary
)))

Google

Nikita
23.04.2018
14:18:31
в бд типы не переопределить, над ними стоит оболочка в виде платформы которая принимает Boolean в виде tinyInt
причем в схеме стоит t.binary limit 1
ну да, логично
только вот я не писал конкретно эту часть поэтому это оказался легкий сюрприз

KEPLER2B
23.04.2018
14:19:17
и тут адекватный выход предконверсия типов в съедобный
остально отломит что то

Marsel
23.04.2018
14:19:39

ojab
23.04.2018
14:20:24
не, нелогично, это я недосмотрел. У тебя тип binary, т.е. blob, а не tinyint, как ты написал.

Nikita
23.04.2018
14:20:42
я даже скрин кинул где у меня стоит binary

ojab
23.04.2018
14:20:50
да

Nikita
23.04.2018
14:21:58
и из-за того что рельсы думают что мое поле Boolean на самом деле не tinyInt а binary то он мое банальное false при инсерте конвертит в вот такую x'66616c7365' классную штукенцию
в этом и трабл

KEPLER2B
23.04.2018
14:22:40
надо просто сделать из false 0
а из true 1

Nikita
23.04.2018
14:23:05
ну и отправляет он x'30' :D

KEPLER2B
23.04.2018
14:23:29
ммм

Nikita
23.04.2018
14:23:43
ну конвертит 0 в бинарник

ojab
23.04.2018
14:23:54
ещё раз: там точно tinyint?

Nikita
23.04.2018
14:24:29
на платформе? да

KEPLER2B
23.04.2018
14:24:39
ok тогда 1.to_bin | 0.to_bin