Rails 3 - 传递参数以显示操作

时间:2012-05-03 19:11:32

标签: ruby-on-rails-3

我的模型College在其控制器中有show个动作。 所以我可以访问/ schools / 1,视图将显示有关id为1的大学信息。 在那个视图中,我有一些标签'学生','竞赛'等。 我的意图是,当用户点击“学生”时,该视图会显示该大学的学生。 当用户点击“竞赛”时,该视图会显示该大学中安排的竞赛。

支持此功能的最佳方式是什么?
1.自定义操作,例如/ acade / 1 / showstudents和/ schools / 1 / showcontests?
2.使用参数显示操作,例如/ acade / 1 / show?type = students,?type = contests?

我在考虑#2,在视图中我可以做<% if params[:type] <=> "contests" .. %> 但是如何在“竞赛”标签中添加一个链接?

这似乎不对。

那么这种情况的最佳做法是什么?

谢谢,

1 个答案:

答案 0 :(得分:2)

所以我认为你应该有一个college_controller.rb,然后就在那里 有一个学生的方法,将评估一个大学参数,并显示该大学的学生,即

def students
  college = College.find(params[:college_id])
  @students = college.students
end