我學習belongs_to的關聯,我已經使用以下機型,在每一個訂單屬於客戶的,所以我用belongs_to的,以模型,可以給錯誤而創造秩序可以belongs_to的工作沒有的has_many或HAS_ONE
未定義的方法'訂單爲#
- 當我使用的has_many
:訂單的客戶模型,可以正常工作,爲什麼它 不只是belongs_to的
工作
它與has_many的工作:在客戶模型中的訂單,但不與 has_one:訂單在客戶控制器它給出相同的上述錯誤。
在此先感謝。
型號: - order.rb
class Order < ActiveRecord::Base
belongs_to :customer
attr_accessible :order_date, :customer_id
end
型號: - customer.rb
class Customer < ActiveRecord::Base
attr_accessible :name
end
控制器: - orders.rb
def create
@customer = Customer.find_by_name(params[:name])
@order = @customer.orders.new(:order_date => params[:orderdate])
respond_to do |format|
if @order.save
format.html { redirect_to @order, notice: 'Order was successfully created.' }
format.json { render json: @order, status: :created, location: @order }
else
format.html { render action: "new" }
format.json { render json: @order.errors, status: :unprocessable_entity }
end
end
end
好的謝謝。它的工作正確的Belongs_to has_many,但在belongs_to has_one的情況下,它會給出錯誤: - 未定義的方法'新'.. @order = @ customer.order.new(:order_date => params [:orderdate]); @ order.save; –