作者joehwang (便宜十塊錢)
看板Ruby
標題[RoR ] 請教1對多關係的資料表寫入資料的問題
時間Fri Jan 18 01:13:48 2008
環境版本
ruby 1.8.6
rails 2.0.2
問題
大家好,最近在看Agile Web Development with Rails一書,但是在寫入、查詢
DB資料的地方不太明白,因此來請教各位高手
我想做一個寫入訂單資料的功能,所以我在order的model中加入has_many :line_item
line_item的model中加入belong_to :order,同時在Line_items這個table中也加入
了order_id。
orders資料表
id
name
desc
line_items資料表
id
order_id
price
vender
在View方面我把orders和line_items的欄位都列在同一個頁面
因為1張訂單中有許多細項,所以我想把資料拆開存放
請問在controller的地方要怎麼寫才能把資料分別寫到order、line_item這兩個資料表呢?
或是哪裡有類似的範例可以參考~
也請告訴我
我做了一個demo
http://order.heroku.com/orders/new
謝謝大家的幫忙~
-------
※ 編輯: joehwang 來自: 122.126.79.5 (01/18 01:20)
1F:推 godfat:看不太懂,可否針對「存放到兩個不同的table」解釋? 01/18 13:57
※ 編輯: joehwang 來自: 60.250.96.13 (01/18 18:24)
2F:推 godfat:不太懂,這樣有什麼不對? 01/18 21:21
3F:→ joehwang:感謝你的回應,我的問題是 01/18 22:07
4F:→ joehwang:不知道要如何把price、vender寫入Line_items資料表,謝謝 01/18 22:08
5F:→ godfat:@line_item = LineItem.new params[:line_item] 01/18 22:11
6F:→ godfat:@line_item.save # 這樣會有問題嗎? 01/18 22:12
7F:→ joehwang:這樣是沒問題的,請問要怎麼把order.id傳給 01/18 22:18
8F:→ joehwang:傳給line_item.order_id呢? 01/18 22:22
9F:→ godfat:加到你的 form 裡面,比方說 hidden_field 之類的 01/18 22:27
10F:→ godfat:接著 controller 裡面再 Order.new params[:order] 取出 01/18 22:27
11F:→ godfat:或是加到 session 中... 看你想怎麼做,我不清楚哪個比較好 01/18 22:28
12F:→ joehwang:原來是這樣,謝謝你囉^^ 01/18 22:34