【发布时间】:2012-01-20 05:26:02
【问题描述】:
通过实施博客,我以大多数人的方式学习 Rails。我刚刚添加了标签,并且我的文章视图达到了在您显示文章时显示可点击标签的程度。问题是链接是这样出来的;
http://localhost:3000/articles?tagged_with=development
我不希望有查询字符串,而是有类似的东西;
http://localhost:3000/articles/tagged_with/development
我在 rails 网站上的“由内而外的路线”指南中找不到任何相关内容(里面有很多有用的东西,只是没有这个!)
完整代码在这里: https://github.com/mikeyhogarth/mikeyblog
相关位是;
_article.html.erb 中的链接:
<%= link_to tag, articles_path(:tagged_with => tag) %>
文章索引控制器:
def index
if(params[:tagged_with])
@tag = params[:tagged_with]
@articles = Article.tagged_with @tag
else
@articles = Article.all
end
respond_to do |format|
format.html # index.html.erb
format.json { render json: @articles }
end
end
rails 的最佳实践方式是什么?我是否需要实现一个“tagged_with”动作并创建一个助手,或者是否有一些 Rails 路由魔法可以快速解决这个问题?
编辑:最终找到答案
【问题讨论】:
标签: ruby-on-rails ruby rails-routing