Rails ブック (最新版) を使用した有名なアジャイル Web 開発からこのスニペットを取得します。
def create
@cart = current_cart
product = Product.find(params[:product_id])
@line_item = @cart.line_items.build(product: product)
これは一般的な e コマース/デポ アプリ用で、この関数は特定の商品の [カートに追加] ボタン用です。ここで私は混乱しています:
コードは次のように想像しました:
@line_item = line_items.build(product: product)
@line_item = line_items.build(cart: @cart)
基本的line_item
に が商品とカートの両方に属している場合は、それらの関係を別々に作成します。
また、カートにline_items
まだ何も入っていない場合、どうすればよい@cart.line_items
ですか? line_items.build(product: product)
がオブジェクトを返すことは理解していline_item
ます (これを に保存します@line_item
) 。 cart.line_items
line_items