我正在开发一个 Rails v2.3.2 应用。一个非常基本的Rails结构实现如下:
我有控制器:
class SchoolController < ApplicationController
...
def check_teachers
@school = School.find params[:id]
@teachers = @school.teachers
end
end
route.rb
中的路径定义:
map.check_teachers, '/school/check_teachers/:id' :controller => :school, :action => :check_teachers
链接点击会触发视图:
link_to 'Check teachers', check_teachers_path(:id => @school.id)
check_teachers 查看check_teachers.html.erb
:
<div>
Hello
<%= render :partial => 'show_teachers'%>
</div>
我希望链接点击将上述视图显示为 jQuery-UI对话框,而不是页面视图。如何实现这个??
---- -----更新
请查看我对@plaes的答案的评论。
答案 0 :(得分:2)
您缺少用于在check_teachers.html.erb
中设置对话框的jQuery UI代码:
<script>
$(function() {
$('#dialog').dialog();
});
</script>
<div id='dialog'>
Hello
<%= render :partial => 'show_teachers'%>
</div>
此外,您需要包含所需的jQuery依赖项(jQuery和jQuery-UI)。这是一个练习......
答案 1 :(得分:1)
默认情况下,它会呈现一个html页面。 在关闭控制器之前添加此代码
respond_to do |format|
format.js {}
end
将您的视图重命名为check_teachers.js.erb 在此文件中,包含必要的jquery。