2013-03-10 4 views
0

Mon application Rails contient deux modèles nommés client et l'ordreRails - bonne façon de se référer par exemple modèle à la deuxième instance de modèle par la console

class Customer < ActiveRecord::Base 
     attr_accessible :name 
    end 

class Order < ActiveRecord::Base 
    belongs_to :customer 
    # attr_accessible :title, :body 
end 

Dans la console, j'ai créé par exemple au modèle client:

c=Customer.new(:name=>"Noa") 

Maintenant, je veux créer une instance pour commander le modèle qui se réfèrent à "c" Comment puis-je le faire? Merci!

Répondre

1

La façon la plus simple est d'avoir un has_many dans la Customer classe:

class Customer < ActiveRecord::Base 
    attr_accessible :name 
    has_many :orders 
end 

et vous pouvez faire ce qui suit pour associer un nouvel ordre à votre client.

order = c.orders.build :attribute => 'value', # ... 

Vous pouvez trouver here plus de détails sur la façon de créer des associations entre l'objet dans Rails.

Questions connexes