Мне нужно настроить старый проект рельсов.Rails database undefined nil
Он генерирует файл excel из базы данных.
Контакт может быть связан с компанией или нет. Если это связано с компанией, а компания defaultddress установлена в компании, на листе excel печатается контактная информация компании.
Что мне нужно сделать, так это то, что в этом случае мне нужно экспортировать как личную контактную информацию, так и информацию о компании на лист excel.
Я нашел файл, в котором генерация первенствует происходит, и просто хотел написать что-то вроде этого:
<% @defaultaddress_id = Contact.find(qc.contact.id).defaultaddress_id %>
<% @address = Address.find(@defaultaddress_id) unless @defaultaddress.empty? %>
<%= @address %>
(. Я тестировал только печать defaultaddress_id, и это просто отлично)
Но Я нахожу это в журналах;
ActionView::TemplateError (undefined method `empty?' for nil:NilClass) on line #87 of app/views/query/_report.html.erb:
Так что я пробовал со следующим;
<% @address = Address.find(@defaultaddress_id) unless @defaultaddress_id == 0 %>
Но теперь ВОФК
ActionView::TemplateError (Couldn't find Address without an ID) on line #87 of app/views/query/_report.html.erb:
Разве это не то, что я пишу? Не выполняйте этот метод, если в поле FK нет чего-то?
Defaultaddress_id - это FK таблицы адресов.
Это не ответ на вопрос, но у вас, видимо, уже есть объект 'contact', поэтому нет необходимости делать' Contact.find (...) '. Вы можете просто: '@defaultaddress_id = qc.contact.defaultaddress_id' – Mischa