Проект, в котором я сейчас работаю, имеет следующие коды в представлении
<%= product.provider.name %>
, приведенный выше код - получить «поставщика» для продукта и отобразить его / ее имя.Но мой вопрос был иногда, что этот код не работает, когда «провайдер» получает ноль.(Я знаю, это немного необычно, но так как я работаю с устаревшей БД, это происходит)
Итак, чтобы проверить проверку на nil, я написал следующий код (в моем ApplicationHelper)
def t(obj, attr)
obj.nil? ? "" : obj.send(attr.to_sym)
end
Теперь я делаю что-то вроде этого
<%= t(product.provider, "name") %>
Даже если это работает, я столкнулся с другой проблемой, но нашел этот код
<%= product.provider.provider_type.title %>
Проблема здесь в том,в приведенном выше коде «provider» или «provider_type» может быть ноль.
Я смотрю на механизм обработки исключений для обработки любого количества вложенных отношений.
Я думаю, у вас всех есть представление о том, что я пытаюсь сделать ...
Или это совершенно неверный путь для обработки нулевых значений во вложенных отношениях
Ваши мысли будут высоко оценены (я бегу по рельсам 2.3.8)
заранее спасибо
ура
Самера