Rails 3 form_for ajax调用

Mar*_*iev 2 ajax action ruby-on-rails form-for

我的控制器中有方法:

def work_here
 @company = Company.find(params[:id])
 current_user.work_apply(current_user, @company)
 redirect_to company_path
end
Run Code Online (Sandbox Code Playgroud)

在我看来:

<%= render 'companies/work_form' if signed_in? %>
Run Code Online (Sandbox Code Playgroud)

_work_form.html.erb:

<%= form_for company, :remote => true, :url => { :controller => "companies", :action => "work_here" } do |f| %>
<%= f.hidden_field :id, :value => company.id %>
<%= f.submit "I working here" %>
Run Code Online (Sandbox Code Playgroud)

<%end%>

我有一个work_here.js.erb文件:

$("#work_at_form").html("<%= escape_javascript("render('companies/works')") %>")
Run Code Online (Sandbox Code Playgroud)

但是我的表单没有ajax请求(在其他页面中ajax forks很好),我的js.erb文件永远不会使用.任何人都可以给我建议吗?谢谢.

shi*_*ara 5

无法读取work_here.js.erb,因为您从未调用它.总是重定向.请求为js格式时呈现它.

def work_here
 @company = Company.find(params[:id])
 current_user.work_apply(current_user, @company)
 respond_to do |format|
   format.html { redirect_to company_path }
   format.js { render }
 end
end
Run Code Online (Sandbox Code Playgroud)