不知怎的,我的表格不起作用,我不知道为什么。继承我的代码:
<%= simple_form_for @cr, url: edit_cr_path do |f| %>
<hr>
Design Office Involvements<br>
<%= f.collection_check_boxes :design_office_ids, DesignOffice.all, :id, :sub, {:item_wrapper_class => 'checkbox_container'} %>
<hr>
Procurement Involvements<br>
<%= f.collection_check_boxes :procurement_ids, Procurement.all, :id, :sub, {:item_wrapper_class => 'checkbox_container'} %>
<hr>
Installation Involvements<br>
<%= f.collection_check_boxes :installation_ids, Installation.all, :id, :sub, {:item_wrapper_class => 'checkbox_container'} %>
<hr>
<div class="row">
<div class="col-md-6">
Assessment Status
<%= f.input :assessment_status, :collection => [['Impacted','Impacted'],['Not impacted','Not impacted'],['Under assessment','Under assessment'],['New','New']], label: false, selected: ['New', 'New'] %>
</div>
<div class="col-md-6">
<div style="float: right">
<%= f.button :submit, 'Save' %>
</div>
</div>
</div>
<br>
<% end %>
控制器方法如下:
class CrsController < ApplicationController
def edit
@cr = Cr.find(params[:id])
end
def update
@cr = Cr.find(params[:id])
@cr.update_attributes(cr_params)
redirect_to edit_cr_path(@cr)
end
private
def cr_params
params.require(:user).permit(:id, :assessment_status)
end
end
这样的路线:
EndToEndManagement::Application.routes.draw do
get '/cr/:id', :to => 'crs#edit', :as => 'edit_cr'
put '/cr/:id', :to => 'crs#update'
patch '/cr/:id', :to => 'crs#update'
end
那就是我的提交按钮的html代码rails:
<div class="col-md-6">
<div style="float: right">
<input class="btn" name="commit" type="submit" value="Save" />
</div>
</div>
我认为提交按钮没有正确附加到表单但我试图移动它并清除一些div但没有任何效果。
最好的问候。
编辑:
这就是我测试的内容
resources :crs
,并将表格中的第一行更改为<%= simple_form_for @cr do |f| %>
。没工作!答案 0 :(得分:0)
当您尝试保存表单时, edit_cr_path 似乎不是正确的网址。 您需要另一条路线:
post '/crs', :to => 'crs#create'
在您看来,您可能不会需要url选项,因为Rails可以推断只是看对象。
<%= simple_form_for @cr do |f| %>
但是您的对象需要是来自您的控制器的新实例:
class CrsController < ApplicationController
def new
@cr = Cr.new #or whatever else to initialize the object
end
def create
#save the instance here
end
答案 1 :(得分:0)
发现我的错误!并不是说它会如此令人兴奋,但我仍然会发布它:D
我的application.html.erb中有这个小错误
<div style="font-size: 1.3em"
<%= yield %>
</div>
将其更改为:
<div style="font-size: 1.3em">
<%= yield %>
</div>
现在它运作正常。