[英]respond_to do |format| gives “UnknownFormat in UsersController#show” in rails 5 app
In my rails 5 app I want to render partials in a div
in the views/users/show.html.erb
on link click. 在我的Rails 5应用程序中,我想在链接单击时在
views/users/show.html.erb
中的div
中呈现部分。
I believe I have set things up accordingly but rails gives me this error ActionController::UnknownFormat in UsersController#show
我相信我已经进行了相应的设置,但是Rails
ActionController::UnknownFormat in UsersController#show
给了我这个错误ActionController::UnknownFormat in UsersController#show
ActionController::UnknownFormat
respond_to do |format|
format.js { render :show_kwst }
end
I'm kind of lost here, I've done similar things in rail 4 by using bootstrap tabs
with out any problems. 我有点迷失在这里,我通过使用
bootstrap tabs
在Rail 4中完成了类似的操作,而没有任何问题。
I've also added the 'responders' gem
to the gemfile
我还将
'responders' gem
添加到了gemfile
This is my views/users/show.html.erb
这是我的
views/users/show.html.erb
<%= link_to 'Kwst', user_path%>
<div id="content"></div>
This is my users_controller.rb
这是我的
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
And here is the `views/users/show_kwst.js.erb`` 这是`views / users / show_kwst.js.erb``
$("#content").html("<%=escape_javascript(render :partial=>"shared/show_kwst")%>");
Am I missing something? 我想念什么吗?
Try to the following order, you can follow this Rails Guide About format.js
尝试按以下顺序进行操作,您可以按照此
Rails Guide About format.js
respond_to do |format|
format.html { @user_kwsts }
format.js
end
Notice the format.js
in the respond_to
block; 注意
format.js
在respond_to
块; that allows the controller to respond to your Ajax request. 允许控制器响应您的Ajax请求。 You then have a corresponding
app/views/users/show_kwst.js.erb
view file that generates the actual JavaScript code that will be sent and executed on the client side. 然后,您将拥有一个相应的
app/views/users/show_kwst.js.erb
视图文件,该文件生成将在客户端发送和执行的实际JavaScript代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.