なぜだか理解できない
Product.new(params[:product])
私のコントローラーでパラメーター:idを使用してidをnullとして保存しますか? 私は2つのパラメータを持つフォームを持っています。:id および :des コンソールを使用する場合
r = Product.new r.id = ... r.des= ... r.save
すべてOKですが、params :desを使用すると、ベースに保存され、保存された:idはnullになります。これがコントローラーであるいくつかのコードを追加します
class ProductsController < ApplicationController
def index
@pr = Product.find(:all)
end
def new
@pr = Product.new()
end
def create
@pr = Product.new(params[:product])
if @pr.save
flash[:notice] = "All OK"
redirect_to products_path
else
flash[:notice] = "Errors"
redirect_to products_path
end
end end
そしてこれがフォーム
<%= form_for @pr do |f| %>
<%= f.label :id %> <br>
<%= f.number_field :id %><br>
<%= f.label :des%> <br>
<%= f.text_area :des%> <br>
<%= f.submit %>
<% end %>
id`s I need fill manualy ---------------- MY OWN ANSWER ------ コントローラにこの文字列 \ を追加します
@pr.id = params[:product][:id]
しかし、なぜ機能しないのですか
@pr = Product.new(params[:product])
わかりません。