
Zamira
02.09.2018
09:16:00
Чуви не до конца поддерживает 6
Спасибо

Aleksey
02.09.2018
09:16:14
https://github.com/toptal/chewy/issues/609
собсна

Google

Zamira
02.09.2018
09:16:48
?
Это я не заметила. Спасибо

Иван
02.09.2018
12:31:28
На локалке работает отлично, а на heroku посыпались стили.. глянул и офигел.
Я в рельсах пока еще чайник. :(

skynet
02.09.2018
13:28:19
Так а в application.scss их запилить было бы ок
Оуч стоп не глянул... А heroku log что там?
$ heroku config:set RAILS_MASTER_KEY=значение
$ heroku run rails db:migrate

Alexey
02.09.2018
13:48:22
Всем привет) Кто нибудь тут работал с RabbitMQ в Rails?)
Вопрос:
Есть регистрация пользователя, в которой добавляется аватар. Надо этот аватар передать в RabbitMQ, потом с помощью сервиса обрезать фото и сохранить фото вместе с пользователем. Есть ли у RabbitMQ плагины или сервисы, которые могут о резать фото? Искал - не нашел.

pny
02.09.2018
14:33:48
Эээ, кролик это же просто message broker, картинки менять ты можешь чем угодно

Дмитрий
02.09.2018
14:39:49
Кто-то в курсе как в sequel динамически передать имя колонки в виде placehoder-a в sql запрос ?
Что-то вида
DB.fetch(%{SELECT :name_stats, :name_analytics FROM db}, name: 'param')
# Надо получить SELECT :param_stats, :param_analytics FROM db
А все, не надо, сам додумался?

Alexey
02.09.2018
15:40:41
В моей ситуации надо именно этим пользоваться))

Google

Nikita
02.09.2018
19:46:45

Богдан
03.09.2018
06:30:11
dry-validation
сенкс, прикольный инструмент, а не подскажешь, а там можно как-то ip провалидирровать, или только через регулярное выражение?


Pavel
03.09.2018
06:43:12
Добрый день!
Сделал foreign key integrity на уровне БД
ActiveRecord возвращает ошибку ActiveRecord::InvalidForeignKey (PG::ForeignKeyViolation: ERROR:.......)
Все ок. Вопрос такой:
Как достать ассоциацию на которой падает ошибка
ActiveRecord::InvalidForeignKey (PG::ForeignKeyViolation: ERROR: update or delete on table "regions" violates foreign key constraint "fk_rails_593c8a7281" on table "branches")
DETAIL: Key (id)=(9) is still referenced from table "branches".
: DELETE FROM "regions" WHERE "regions"."id" = $1
При rescue ActiveRecord::InvalidForeignKey хотелось бы как-то вытащить, что проблема с зависимостью от branches
Как я понимаю, в ошибку сливается только сообщение которое возвращает база
https://github.com/rails/rails/blob/123fe0c9ac559cb58a208c23a96669845f24dfb1/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb#L422
И достать структурированные данные по простому нельзя


pny
03.09.2018
06:54:45
Зачем тебе ее доставать? Хочешь удалить ее? Хочешь обнулить значение что бы ошибка не падала?

Nikita
03.09.2018
06:56:23
ну там на самом деле в ошибке же видно какая таблица на какую заявязанна

Pavel
03.09.2018
06:56:35
К примеру
regions -< branches
regions -< courier_areas
Регион нельзя удалить если есть хотя-бы один branch, регион нельзя удалить если есть хотя-бы одна courier_area

pny
03.09.2018
06:56:53
И?

Nikita
03.09.2018
06:57:01
у тебя сейчас же так и работает, не?)

Pavel
03.09.2018
06:57:06
Погодите)
Сейчас выпадет ошибка ActiveRecord::InvalidForeignKey в обоих случаях
как мне показать пользователю с какой ассоциацией проблема

pny
03.09.2018
06:58:27
Добавить валидацию в рельсе

Pavel
03.09.2018
06:58:31
если я буду использовать в модели dependent: :raise_with_exception, то я смогу получить данные, но теряются все приемущества проверки на уровне БД

Nikita
03.09.2018
06:59:11
да не, ему просто нужно вывести типа алерт, что есть какая-то дочерная сущность

Pavel
03.09.2018
06:59:15
как и с проверкой на уникальность высок шанс race condition

Google

Nikita
03.09.2018
06:59:25
и он не может удалить родительскую, пока есть дочерняя
я же правильно понял?

Pavel
03.09.2018
07:00:00
да, все верно

pny
03.09.2018
07:00:16
Какие преимущества то?
Оставляешь fkтв базе, добавляешь валидацию в рельсу. Показываешь юзеру няшную ошибку

Pavel
03.09.2018
07:01:32
наверное так и сделаю, спасибо

Zamira
03.09.2018
07:26:32
Коллеги, вопрос.
Есть связь company has many customers
Я знаю, что связные сущности активрекорд можно вытащить в json вот так
@company.to_json(include: :customers)
Но мне сейчас надо вытащить связные сущности, когда @company внутри хэша. То есть
{key1: value1, company: @company}.to_json
Как в таком случае это можно сделать?

Felix
03.09.2018
07:27:58

Pavel
03.09.2018
07:35:14
Блин, dependent: :restrict_with_exception не подходит, так как не хранит ассоциацию, а передает ее сразу в сообщение =(
https://github.com/rails/rails/blob/97321956e6c2d2bae1bf6f76fce5bfb909ab58b0/activerecord/lib/active_record/associations.rb#L175
нужно restrict_with_error, но я не использую валидации рейлс и схему ошибок на объекте модели
так как dry-validation и все это
Т.е. все данные нормально отдаются только при restrict_with_error

Pavel
03.09.2018
07:38:01
https://github.com/rails/rails/blob/b2eb1d1c55a59fee1e6c4cba7030d8ceb524267c/activerecord/lib/active_record/associations/has_many_association.rb#L18
проманкипатчить придется

Anton
03.09.2018
07:49:14
Но шифутинский не Олег, а Михаил

Dmitry
03.09.2018
08:07:47
Круг?

Artur
03.09.2018
08:07:55
класегу знатб надо

Антон
03.09.2018
08:08:27
Круг?
Шуфутинский Круг, да

Google

Anton
03.09.2018
08:08:28

Felix
03.09.2018
08:08:28
Моцарта знаю. Когда Шуфутинский стал классикой?)

Artur
03.09.2018
08:08:44

Anton
03.09.2018
08:08:46

Artur
03.09.2018
08:08:50

Anton
03.09.2018
08:08:56
Пока костры рябины горят

Artur
03.09.2018
08:09:16
как костры горят обещания

Ilya
03.09.2018
08:09:24
пока сентябрь горит

Admin
ERROR: S client not available

Zamira
03.09.2018
08:12:57
Посмотрите пожалуйста
Я могу без проблем засериализовать одну компанию, для нее написать сериалайзер. Но что делать что бы рилейшн был со всеми нужными ассоциациями что указано в сериалайзере?

Felix
03.09.2018
08:15:35
у него есть возможность указать has_many :companies

Nikita
03.09.2018
08:15:58
как задетектить ровного кента и эмо боя, у ровного пацана горят костры рябин, а у эмо боя сентябрь

Felix
03.09.2018
08:15:59
и даже указать нужный сериализатор, если нужен другой, нежели тот что уже есть для компании

Zamira
03.09.2018
08:16:22
Условно сериалайзер выглядит так
class CompanySerializer < ActiveModel::Serializer
attributes :id, :category_id, :name
has_many :customers
end

Sergey
03.09.2018
08:18:13
если через rails магию делать, то явно надо курить доки, как это все провернуть вашим способом

Zamira
03.09.2018
08:19:01

Sergey
03.09.2018
08:19:16
и плохо делать так, когда ключ company, а туда приходит коллекция(

Google

Zamira
03.09.2018
08:19:31
Ключ в таком случае тоже будет companies
Не суть
Просто у меня на всех моих сериалайзерах ошибки вылетают
А времени катострофически мало
Паникую)

Felix
03.09.2018
08:19:59
может сериализатор явно указать?)

Sergey
03.09.2018
08:20:23

Felix
03.09.2018
08:20:47
так он сам все сериализует

Sergey
03.09.2018
08:20:50
там если явно указать, то он должен в hash сделать

Felix
03.09.2018
08:20:53
потом только результат забрать и все

Sergey
03.09.2018
08:20:55

Zamira
03.09.2018
08:21:02
Сначала разберусь с ошибками
I'll be back

Felix
03.09.2018
08:34:36
100%?
у меня да. прописал нужные связи, и все работает правильно

Sergey
03.09.2018
08:37:20

Felix
03.09.2018
08:37:46
на стейдже тоже работает )

Sergey
03.09.2018
08:37:55
В целом, active serializer не работал уже года 3
поэтому самое очевидное решение без лишнего гемора с магией и дебагом - то что проще и быстрее - новый сериалайзер