@rubylang

Страница 1470 из 1684
Darth
23.04.2018
12:02:46
Это Ruby решение, оно работает с рельсами
Смысл если нет документации с рельсами?

Артур
23.04.2018
12:04:30
Смысл если нет документации с рельсами?
зачем тебе она, если ты делаешь просто пдф ?

KEPLER2B
23.04.2018
12:04:36
как вариант - убрать include Auth из ApiController и впихнуть его в те конторллеры которые нуждаются в аутентификации
Всем привет! У меня апи так и прикрыто на одном из проектов, концерн в нем авторизация и включено только туда куда надо.

Богдан
23.04.2018
12:05:32
как вариант - убрать include Auth из ApiController и впихнуть его в те конторллеры которые нуждаются в аутентификации
сенкс, тоесть создать отдельный контроллер для методов которым не нужна аутентификация?

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

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

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
кто-то поднимал проксю для телеги через dante-server? не было такого, что постоянно висит connecting to proxy?
проверь настройки аутентификации, у меня телеграм с dante работает только без аутентификации, при этом остальные сервисы ок

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
как вообще rails понимает что нужно отправлять именно так значение конкретного поля
Model.columns из rails console так вы сможете убидится хотябы в соотсветсвии типов, может чем то поможет

KEPLER2B
23.04.2018
13:18:22
?

ничего странного именно исходя из этого вывода rails преобразовывает типы при записи

Model - тут ваша модель которая генерирует проблему

Nikita
23.04.2018
13:40:16
ничего странного именно исходя из этого вывода rails преобразовывает типы при записи
могу переопределить тип поля или вообще отключить конвертацию?

через model

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

KEPLER2B
23.04.2018
13:45:13
могу переопределить тип поля или вообще отключить конвертацию?
теоритически мы можете попробовать переопределить методы attribute и attribute=, но вам прийдется привести их к типу который реально есть в БД в данном случае как видно из схемы это binary и обратно

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

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

Страница 1470 из 1684