我有兩個模型類叫做order.rb和customer.rb:我如何才能訪問到另一個模型類屬性
order.rb
class Order < ActiveRecord::Base
belongs_to :customer
validates :customer_id, :name, :age, :presence => true
def self.to_csv
attributes = %w{ to_param name age }
CSV.generate(headers: true) do |csv|
csv << attributes
all.each do |t|
csv << attributes.map{ |attr| t.send(attr) }
end
end
end
customer.rb
class Customer < ActiveRecord::Base
belongs_to :order, primary_key: "customer_id"
has_many :orders
validates :phone_number, :name,:email,:presence => true, allow_blank: true
我的問題是我如何獲得customer.rb
數據,如它屬性的電子郵件和名稱。然後將其添加到order.rb
數據。如果你看看order.rb
模型,我可以得到列出的屬性:名稱和年齡,但我試圖獲得customer.rb
屬性,如電子郵件,姓名和電話號碼。 但是,只有當我應用下面的方法顯示並且一遍又一遍地打印出同一封電子郵件時,我纔可以訪問一封電子郵件。如果有人能幫助我,請提前致謝。
def to_param
Customer.new.email
Customer.all.first.email
end
爲什麼在模型中都有'belongs_to'關聯。因爲它看起來應該是Customer'has_many'命令。不是嗎? – dp7
@dkp我忘了將它添加到我的模型,但我回去改變它。 – user2803053
您已將它添加到'Order'模式中,而應將其添加到'Customer'模型中,像這樣'has_many:orders' – dp7