在我的场景中使用link_to的最佳方法是什么

时间:2013-02-02 13:55:12

标签: ruby-on-rails-3.1

我正在使用rails,所以我在这里遇到了问题

link_to 'Movie Title', {:action=> 'sort', :checks=>"#{@temp.join('_')}"}, :id => 'title_header'

这是我的代码段,在悬停或点击此链接时,我得到的是, /电影/排序?检查= G_PG_NC-17

但我需要它像电影/排序/ G_PG_NC-17,看到差异没有“检查?”在第二个网址中,无论如何,我可以借助javascript和routs.rb中的一些更改来实现这一点,但我认为还有其他的东西,我可以很容易地完成它。 非常感谢您的投入。

干杯。 Jossie。

3 个答案:

答案 0 :(得分:0)

我认为有一种比编辑routes.rb文件更简单的方法并添加如下内容:

match 'movies/sort/:checks

答案 1 :(得分:0)

在路线

中添加此内容

get '/movies/sort/:checks' => 'movies#sort', as: :movies_sort_checks

然后

link_to 'Movie Title', movies_sort_checks_path(@temp.join('_'))

答案 2 :(得分:0)

最后这是由我自己完成的,无论如何我对铁杆很新,我认为其他明智的我不会想出这个问题。

所以这部分链接到'电影标题',{:action => 'sort',: checks =>“#{@ temp.join('_')}”},:id => 'title_header'更改为link_to'电影标题',returm_link(@temp),:id => 'title_header'

现在看到return_link是一个帮助方法。 去控制器并添加 def return_link(kick) '/'+shot+'/'+kick.join('_') 结束 helper_method:stringo

最后如您所期望的那样改变routes.rb 匹配'/ sort /:checks',:to => '电影#排序'

完成所有工作都按预期工作,因此自定义助手在这里非常有用

干杯。 Jossie。