Rails link_to不同的资源

时间:2011-04-08 03:12:44

标签: ruby-on-rails

我现在有:

= link_to 'Back <', @discussable

@discussable可以是带标题的课程,也可以是带名字的小组(我希望我使用相同的名字)。所以我想根据@discussable类型显示“Back to * course_title *”或“Back to * group_name *”。我怎么做?谢谢!

2 个答案:

答案 0 :(得分:2)

在模型中,您可以创建每个模型必须响应的方法,例如def title,然后从那里调用它。

示例:

class Group < ActiveRecord::Base
  #code

  def title
    self.name
  end

end

class Student < ActiveRecord::Base
  #code

  def title
    self.full_name
  end

end

然后你会这样做:

= link_to "Back to #{@discussable.title} <", @discussable

答案 1 :(得分:1)

就个人而言,对于每个模型类,我会添加一个label实例方法,返回适当的值,然后说...

= link_to“返回#{@discussable.label}&lt;”,@ discussable