当我创建一个skid时,我试图获取用户输入的值,以便我可以多次创建该记录。
在 _form.html.erb 中是我所有代码所在的位置。在 new.html.erb 中,我用以下方式调用表单:
<%= render 'form' %>
这是我试图访问的表单中的一段代码:
<%= f.label :skid_count %>
<%= f.number_field :skid_count, :value => '1', :required => 'required', :pattern => ValidationValues.c_integer, :placeholder => ValidationValues.p_integer %>
在控制器中,我试图这样做:
def create
@skid = Skid.new(params[:skid])
count = params[:skid_count].to_i
# Create record in the database, and return an appropriate message
respond_to do |format|
if @skid.save
for i in 1..count
Skid.new(params[:skid]).save
end
format.html { redirect_to @skid, notice: 'Skid was successfully created.' }
format.json { render json: @skid, status: :created, location: @skid }
else
format.html { render action: "new" }
format.json { render json: @skid.errors, status: :unprocessable_entity }
end
end
end
由于某种原因,计数变量没有获取数字,如果我对其进行硬编码并将 3 放入其中,它将按预期创建记录 4 次,但是如果我尝试根据用户输入的内容获取数值,如上所示,它不起作用。它每次只创建 1 条记录。
我无法访问该参数是否有原因?