У меня проблема с рельсами, когда у меня есть базовые отношения многие ко многим между двумя моделями (порядок и статус).Эти модели выглядят следующим образом:
class Order < ActiveRecord::Base
has_many :products, :through => :lines
has_and_belongs_to_many :statuses
default_scope order("#{table_name}.created_at desc")
end
и
class Status < ActiveRecord::Base
has_and_belongs_to_many :orders
end
В моем представлении индекса для заказов я отображаю самый последний статус заказа, поэтому order.statuses.lastОднако имя, когда я создаю новый заказ, я получаю сообщение об ошибке.Эта ошибка относится к неопределенному имени метода, так как новые заказы не имеют каких-либо отношений при первом создании.
Мой вопрос, есть ли способ инициализировать отношения между двумя моими моделями перед сохранениемновый заказ?Я бы хотел, чтобы у моих заказов всегда был хотя бы первый статус в моей коллекции статусов, но я не хочу, чтобы раньше их проверяли вручную перед сохранением.
Ошибка для правильных мер:
undefined method `name' for nil:NilClass
за эту строку на мой взгляд:
<td><%= order.statuses.last.name %></td>
Спасибо всем.