Ruby on Rails面包屑动态链接标题内容

时间:2011-06-06 03:35:23

标签: ruby-on-rails breadcrumbs

如何动态地将视频名称链接到我的面包屑的标题内容。

我已按照https://github.com/sekrett/crumble

中的教程进行操作

/config/initializers/breadcrumbs.rb

    crumb :root, "Home", :root_path
    crumb :video, {:videos => :name}, :video_path
    trail :videos, :show, [:root, :video]

在我的视频展示页面中,面包屑如下所示:

“主页>>缺少翻译:en.breadcrumbs.video”

如何访问视频标题并动态显示?

1 个答案:

答案 0 :(得分:0)

为了使用`crumb:video,{:videos => :name},:video_path`,首先应在`.yml`文件中定义一个新的breadcrumbs节点,然后确保对象`@ videos`存在于你的上下文中,对象`@ videos`有一个有效的方法“name”(将返回一个字符串)

  

在你提供的代码中,你使用`video_path`,所以我猜你正在使用模型Video的“show”方法(在CRUD中),所以你可以再次检查控制器的视频模型以进行正确的翻译。

  

无论如何,因为值“params [:id]`在”show“方法的上下文中可用。您可以使用它,只需将代码更改为以下内容:

 crumb :video, '#{Video.find(params[:id]).name}', :video_path, :params => :id
  

这种方式可能“不漂亮”(如您提供的链接中所述),但您可以实现您想要的而无需在新的.yml`文件中定义新的breadcrumbs节点