我试图实现一个'编辑'链接,调出一个窗体来更改页面上显示的属性。渲染的部分不接收参数
我的布局有:
<div id="company_info">
<%= yield :company_info %>
</div>
<div id="edit_company_info">
</div>
我的观点有:
<%= content_for :company_info do %>
<%= render 'company_info' %>
<%= link_to "Edit", 'company_info_form', :class => 'btn btn-mini', :method => :get, :remote => true %>
我的控制器有:
def company_info_form
@company = Company.get(params[:id])
respond_to do |format|
format.js
end
end
我company_info_form.js.erb文件有:
$('#edit_company_info').html("<%= escape_javascript(render "company_info_form") %>");
一旦点击该链接,我的服务器显示:
Started GET "/companies/company_info_form" for 127.0.0.1 at 2012-03-12 20:19:13 -0700
Processing by CompaniesController#show as JS
Parameters: {"id"=>"company_info_form"}
Completed 500 Internal Server Error in 1ms
RuntimeError (Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id):
app/controllers/companies_controller.rb:9:in `show'
所以我觉得这是一个路由issue--,但我不知道如何解决它。我如何获取当前页面上的company_id参数,以便我正在加载的部分能够识别该参数?
我在/companies/1
,但链接是companies/company_info_form
,失去"company_id = 1"
参数。
真棒!非常感谢你 - 非常棒。 – Lumen 2012-03-13 04:33:11
ps。我也编辑了你的问题。你可以检阅我的编辑吗? – prasvin 2012-03-13 04:34:31