使用link_to来指定控制器动作时,使Ajax部分出现问题
|
我在\“ proposition \”显示页面上有一个div(id = \“ content \”),我要根据选择的div顶部的哪个选项卡来渲染不同的部分。
我正在尝试使用以下link_to使用AJAX渲染部分(substantive_content):
<%= link_to \"Connected\", :url => {:controller => \"propositions\",
:action => \"substantive_content\"}, :remote => true %>
我有两个问题:
点击链接后,即会收到GET请求
发送到
PropositionsController#show
,以及
不(我认为)为“实质”
内容”操作。这只会刷新页面,并且不会远程执行任何操作。不会显示正确的部分内容。
我不确定如何渲染
部分归入“内容” div。
目前,我在PropositionsController中具有以下功能:
def substantive_content
respond_to do |format|
format.js{ render :update do |rightbar|
rightbar.replace_html \'content\', \'Hello World!\'
end}
end
end
...但是不确定从这里去哪里。我什至会以正确的方式解决这个问题吗?我对Rails,JavaScript等非常陌生。
这些问题中的任何一个的帮助都是很棒的。谢谢!
没有找到相关结果
已邀请:
1 个回复
公藕
然后,在您看来,链接应如下所示:
当js请求进入substantive_content动作时,我将呈现js.erb文件。动作看起来像这样:
然后在您的views / propositions目录中创建一个substantive_content.js.erb文件。在该文件中,您可以使用jquery更新内容div:
在不了解您正在处理的实际应用程序的情况下,很难说这是否是实现所需目标的最佳方法。我通常会尽量让我的应用程序保持“ RESTful”状态,因此我不愿意创建动作不是正常索引,新建,创建,显示等设置的一部分。并不是说在这种情况下不是必需的,而是要考虑的事情。