2012-03-06 50 views
0

我试图阻止双重内容与respond_to结合使用。所以,我加入到我的控制器:Rails 3 respond_to:html和防止双重内容

respond_to :html 

与respond_with组合这个伟大的工程,到目前为止,对接他的用户仍然可以使用访问我的网页之一:

  • /我/页
  • /我/页/或
  • /my/page.html

我想这限制了他们的一个(更喜欢第一个)。完全删除格式并不是一个解决方案,因为我可能有一天会回复json或xml。

预先感谢您的任何提示!

回答

0

这样做会非常不愉快,也会让您的网站更难用户使用。除非你有这样一个真正有吸引力的理由,否则我只会使用Rails的默认值,并接受一个事实,即你有很多不同的URL指向一个资源。这样做真的不应该伤害你。

再一次,你应该不这样做。但如果你真的想,你可以玩routes.rb手动创建你想要的路线。查看Rails routing guide了解更多关于如何生成看起来更像你想要的Rails路线的信息。

也就是说,这仍然可能不足以摆脱my/page /和my/page指向同一个地方。如果真的有必要,我会考虑完全放弃Rails,并使用像Sinatra这样的不同框架,在这个框架中,对路由有非常细致的控制(因为框架根本没有路由假设)。

但是最好的做法可能只是接受路线,并继续前进。

+0

到目前为止谢谢。我唯一担心的就是网址,搜索引擎可能会将内容检测为双重内容或将它们索引两次。但我不是SEO的专家,所以我认为我更喜欢创建一个规范链接元素,而不是限制路线。 再次感谢! – 2012-03-07 07:23:29