1

不明白为什么

Product.new(params[:product]) 

在我的带有参数的控制器中:id 将 id 保存为空?我有 2 个参数的表单。:id 和 :des 当我使用控制台时

r = Product.new r.id = ... r.des= ... r.save

一切都好但是如果我使用参数:des保存在base中并且: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 我需要手动填写 ---------------- 我自己的答案 ------ 在控制器中我添加了这个字符串 \

@pr.id = params[:product][:id]

但为什么不工作

@pr = Product.new(params[:product])

我不明白。

4

0 回答 0