【发布时间】:2014-01-09 16:51:28
【问题描述】:
我有一个要在其中存储订单的数据库。我不想将每个订单项捆绑在一个字段中,除非有充分的理由这样做。有列item_1、item_2、item_3、item_4;我想遍历每个订单项直到完成。
我得到的错误是:
语法错误: /Users/chadsakonchick/Projects/restlessnapkin/charge.rb:47:语法 错误,意外的 tSTRING_BEG,期待 keyword_end @order.line_item = item["quantity"] 'x' item["item"] ^ /Users/chadsakonchick/Projects/restlessnapkin/charge.rb:47:语法 错误,意外的 tIDENTIFIER,期待 keyword_end @order.line_item = 项目[“数量”] 'x' 项目[“项目”] ^
/order.rb
# Write order to the database
@order = Order.new
@order.venue_id = @venue
@order.customer_id = @customer.id
# Loop each line item
x = 1
@customer_order.each do |item|
line_item = "item_#{x}"
@order.line_item = item["quantity"] 'x' item["item"]
x += 1
end
【问题讨论】:
-
@order.line_item是字符串"#{item["quantity"]} x #{item["item"]}"还是数字item["quantity"] * item["item"]? -
我认为您也不希望拥有固定数量的订单项。创建
LineItem模型并使用association (Order has_many :line_items/LineItem belongs_to :order)。
标签: ruby activerecord sinatra