Я не понимаю, почему он это делает.У меня есть метод, определенный в моей BusinessStore
модели, и я возвращаюсь к нему:
business_store.rb
class BusinessStore < ActiveRecord::Base
attr_accessible :website, :business_name, :address, :phone_number, :online_store
belongs_to :business
has_many :user_prices
attr_accessor :business_name
validates_presence_of :address, :unless => :website?
validates_presence_of :business_name
validates_inclusion_of :online_store, :in => [true, false]
def store
if self.online_store
"#{business_name} - #{website}"
else
"#{business_name} - #{address}"
end
end
def business_name
business.name if business
end
def business_name=(name)
self.business = Business.find_or_create_by_name(name) unless name.blank?
end
end
user_data / index.html.erb
<% for user_price in @bought_today %>
<%= number_to_currency(user_price.price) %>
<%= truncate(user_price.product_name, :length => 62) %></td>
<%= truncate(user_price.business_store.store, :length => 85) %></td> # here
<%= user_price.purchase_date.strftime("%b %d, %Y") %></td>
<% end %>
Затем я перехожу на страницу и получаю:
ActionView::Template::Error (undefined method `store' for nil:NilClass):
Почему это не работает?