Railsを使用したアジャイルWeb開発の第4版をフォローしています。第9章112ページ。私はraketest:functionalを実行しようとしています。私は彼らのコードのすべての部分に従ったと思いますが、それは私に大量割り当てエラーを与えています。サーバーを実行すると、このエラーが発生します
ActiveModel :: MassAssignmentSecurity :: LineItemsController#createのエラー
保護された属性を一括割り当てできません:製品
LineItemsControllercreate関数は次のようになります。
def create
@cart = current_cart
product = Product.find(params[:product_id])
@line_item = @cart.line_items.build(product: product)
respond_to do |format|
if @line_item.save
format.html { redirect_to @line_item.cart,
notice: 'Line item was successfully created.' }
format.json { render json: @line_item,
status: :created, location: @line_item }
else
format.html { render action: "new" }
format.json { render json: @line_item.errors,
status: :unprocessable_entity }
end
end
end
これは、test /Functional/フォルダーのline_items_controller_test.rbにある作成テストです。
test "should create line_item" do
assert_difference('LineItem.count') do
post :create, product_id: products(:ruby).id
end
assert_redirected_to cart_path(assigns(:line_item).cart)
end
私は何を取りこぼしたか?