
Nikolay
29.09.2017
09:19:12

Alex
29.09.2017
09:19:31
футурки куда более эффективные, вручную все это писать тупо лень.

Anatoly
29.09.2017
09:31:07
Ребят, подскажите, как связать таблицы:
Таблица А: media_type, media_id, ...
Таблица Б: media_type, media_id, ...
Таблицы для которых используется polymorphiс
Нужно как-то сделать, A has_many Б через media_type и media_id
Понятно, как сделать через промежуточную джоин таблицу C(АБ), но надо без нее:
A has_many :Б's, through: :С's, source: :Б's

Google

Dmitriy
29.09.2017
10:32:58
Господа, никто не знает как пофиксить ошибку?
ActiveRecord::RecordNotSaved
You cannot call create unless the parent is saved

Artem
29.09.2017
10:34:47

Dmitriy
29.09.2017
10:35:21
проблема в том что это от окружения почему то зависит
и ошибка в сидах появляется

Vasiliy
29.09.2017
10:36:07
ну тык в одном окружении бд не пустая

Dmitriy
29.09.2017
10:36:26
не верно

Artem
29.09.2017
10:36:34
Эта ошибка как правило в сидах и появляется. Закинь сниппет на гист, сохранение объекта, который бросает ошибку

Dmitriy
29.09.2017
10:36:35
в обоих окружениях бд пустая

Artem
29.09.2017
10:37:05
ну и неплохо бы код, который создаёт объекты, на которые ссылается объект с ошибкой

Dmitriy
29.09.2017
10:40:23
https://gist.github.com/dmitriy-strukov/0971b91390fd1a5d50dab0fac80018bf

D
29.09.2017
10:40:24
У тебя в сидах используется чилдрен не созданного парента.

Dmitriy
29.09.2017
10:40:34
но он создается
но на одном из окружений почему то падает

Google

Dmitriy
29.09.2017
10:40:45
хз почему
с этой ошибкой

Vasiliy
29.09.2017
10:41:20
мож парент не валидный?

Dmitriy
29.09.2017
10:42:00
тогда бы у меня сиды не проходили
ветки идентичны как бы
посему я в замешательстве немного

Vasiliy
29.09.2017
10:48:08
бд точно чистая?

Dmitriy
29.09.2017
10:48:57
yep

D
29.09.2017
10:54:24
https://github.com/rails/rails/blob/master/activerecord/lib/active_record/persistence.rb#L40

Artem
29.09.2017
10:59:15

Иван
29.09.2017
12:37:48
Привет хакеры

Oleg
29.09.2017
12:38:17
Обычно такое начало диалога заканчивается флудом и баном

Artem
29.09.2017
13:03:56
Потому что обращение надо выделять запятыми

Anton
29.09.2017
14:06:41
https://herokulove.com/
там куча крутых проектов
можно проголосовать и тогда хероку заплатит 500$ за проект

Alex
29.09.2017
14:07:15
> we'll choose a voter at random
> random
чето как то фу.

Vlad
29.09.2017
14:09:51
Лучшие хакеры пишут на руби)

Google

Alan
29.09.2017
14:10:52

Alex
29.09.2017
14:11:13

Vlad
29.09.2017
14:11:49

Nikolay
29.09.2017
14:15:39
как-то странно мешать языки и тулы в одном опросе о_О

Alex
29.09.2017
14:17:08
шо то технология, шо это

No
29.09.2017
15:00:07
Ребята, i need help. Есть удаленый сервер с базой. Открыт порт, всё отлично пингуется и доступно(тобишь iptables нифига не реджектит). С одного сервера коннект к постгресу на этот удаленый сервер выстреливает нормально, с другого - бесконечный коннект и таймаут в итоге.
Понимаю, что конкретно трудно что-то подсказать, но куда копать хотя бы?
В конфигах постгреса проставил, чтобы аццептиполо с любого ip

A
29.09.2017
15:07:06

No
29.09.2017
15:07:26
Ок, сейчас проверю
хм
данные летят в постгрес

No
29.09.2017
15:12:33
а постгрес не отвечает нифига
причем с сервера, с которого коннект проходит нормально - всё ок с той же командой абсолютно
постгрес респонсит обратно

Vladimir
29.09.2017
15:14:51

No
29.09.2017
15:15:32
смотри, я в tcpdump вижу, что пакет пришёл, вижу откуда и куда (на порт постгреса)
но в нормальной ситуации потом с порта постгреса летят пакеты обратно
а в ситуации которую я пытаюсь решить - нет

Vladimir
29.09.2017
15:16:19
а какие пакеты-то?

Google

No
29.09.2017
15:16:43
может я формулирую как нуб, сек, в линухе не силен, попытаюсь нагляднее

Vladimir
29.09.2017
15:16:58
да, давай выхлоп tcpdump-а

Admin
ERROR: S client not available

No
29.09.2017
15:18:33
я правильно понимаю, что в случае, если бы это реджектил iptables - я бы не видел здесь вообще ничего?
или неправильно?

Vladimir
29.09.2017
15:19:18
нет
походу именно iptables дропает эти пакеты
это просто попытки установить коннект, на которые нет ответа
А попробуй еще icpm добавить

No
29.09.2017
15:20:52
значит буду курить что не так с iptables, рулзы на ACCEPT вроде как добавил по аналогии с первым сервером

Mikhail
29.09.2017
18:28:04
В настройках постгрес можно указать с каких айпи он принимает запросы, по умолчанию локалхост
В эту сторону смотрел?

No
29.09.2017
18:30:25
Но я уже не в офисе, так что в понедельник уже решать буду

nikita
29.09.2017
19:13:38
посоны, какой самый православный способ динамически значение в класс записать - через ivar или метод?

Vasiliy
29.09.2017
19:14:53
Паблик сенд?

nikita
29.09.2017
19:15:45
не, я имею в виду instance_variable_set vs define_method

Alex
29.09.2017
19:17:10

Mikhail
29.09.2017
19:17:56
Я так понимаю, что ему имя переменной нужно динамически задавать

nikita
29.09.2017
19:18:16
ну естественно

Mikhail
29.09.2017
19:18:17
Если так, то выглядит как плохой дизайн

Google

Mikhail
29.09.2017
19:18:50
Зачем тебе это? У тебя непредсказуемое количество наименований переменных?

nikita
29.09.2017
19:19:34
нет, я пишу гемчик, там dsl
дело не в имени, на самом деле, а в том, что это в рантайме надо делать

Mikhail
29.09.2017
19:20:30
Может стоит использовать какой-нибудь Struct.new(:name, :value)?
Вместо динамического изменения класса

nikita
29.09.2017
19:41:00
я не совсем понимаю, как это поможет
вот, например:
class User < Dry::Struct
attribute :name, Types::Strict::String
end
этот аттрибут же все равно будет дефайниться как метод дальше

Mikhail
29.09.2017
20:02:56
Для чего тебе динамически определять метод? Просто для хранения поименованных данных?
Я бы вместо динамического изменения классов (что почти всегда плохо) складывал структурированные данные в какой-нибудь массив со структурированными данными (или хранить в каком-то атрибуте класса одну структуру, если их не может быть больше одной).
Динамически определять методы слишком сильная магия

nikita
29.09.2017
20:03:56
> хранить в каком-то атрибуте класса одну структуру, если их не может быть больше одной
минутку

Женя
29.09.2017
20:15:54

nikita
29.09.2017
20:17:41
копаюсь