在我的rails 5应用中,我想在链接点击的div
中的views/users/show.html.erb
中呈现部分内容。
我相信我已经相应地进行了设置,但是rails给了我这个错误ActionController::UnknownFormat in UsersController#show
ActionController::UnknownFormat
respond_to do |format|
format.js { render :show_kwst }
end
我有点迷失在这里,我在轨道4中做了类似的事情,使用bootstrap tabs
解决了任何问题。
我还将'responders' gem
添加到gemfile
这是我的views/users/show.html.erb
<%= link_to 'Kwst', user_path%>
<div id="content"></div>
这是我的users_controller.rb
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
@user_posts = @user.posts
@user_kwsts = @user.kwsts
respond_to do |format|
format.js { render :show_kwst }
end
end
end
这是`views / users / show_kwst.js.erb``
$("#content").html("<%=escape_javascript(render :partial=>"shared/show_kwst")%>");
我错过了什么吗?
答案 0 :(得分:1)
尝试按以下顺序操作,您可以按照此Rails Guide About format.js
respond_to do |format|
format.html { @user_kwsts }
format.js
end
注意respond_to
块中的format.js
;这允许控制器响应您的Ajax请求。然后,您有一个相应的app/views/users/show_kwst.js.erb
视图文件,该文件生成将在客户端发送和执行的实际JavaScript代码。