inf
@inf
DevOps Engineer

Как вытащить имена зависимых моделей с ошибками?

Есть комплексная форма Заказа, которая принадлежит Клиенту и Адресу. Соответственно в контроллере:
def new
    @order = Order.new
    @order.build_kls_client
    @order.build_kls_address
end

Так как Клиент и Адрес во вкладках, то стоит задача маркировки соответствующей вкладки если соответствующая модель провалит валидацию. Для этого надо понять в каких зависимых моделях ошибки.
Написал такую строку:
o.errors.messages.keys.collect(&:to_s).select { |v| v.split('.')[1] }.map { |x| x.split('.')[0]}.uniq

Насколько она близка к говнокоду? И можно ли как-то проще достать эти имена?
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы