智能路由方法

时间:2013-07-16 22:26:43

标签: jquery ruby-on-rails routing

我注意到jquery.com使用/ nameOfMethod作为路由约定。使用此优势来引用先前堆栈问题的来源我输错了www.jquery.com/next - > www.jquery.com/nex我发现令人惊讶的是,路由非常智能,可以看到名称的相似性,并正确地(可能是错误的)路由我。我是后端编程的新手。我刚刚在Ruby on Rails上完成了我的第一个项目。该项目让我接触到了诸如协会,CRUD,MVC以及我从未知道的大量事情。我对网络的运作方式越来越有说服力,这是知识渊博的路由很有意思。

Ruby on Rails为例,如何实现智能路由?我可以通过什么样的词来了解有关此流程的更多信息?这种互动对后端编程的兔洞有多么困难或深层次?有没有什么可以胜过这种互动,这是你可以建议的更尖端的东西?

1 个答案:

答案 0 :(得分:1)

所以,在routes.rb你会做类似

的事情

match '/:itemname', to items#show

在Items控制器中,您将拥有

def show
    item = Item.where("itemname like ?", "#{params[:itemname]}%").to_sql
    redirect_to item
end

本质上你是

  1. 将root_url / name_of_an_item映射到控制器中的操作     这
  2. 形成一个SQL查询,该查询在itemname之后采用通配符     习惯
  3. 将用户重定向到该项目的路线     问题。
  4. 我的例子可能在语法上不正确,但这就是它背后的逻辑。 转到http://guides.rubyonrails.org/index.html并阅读路由和查询界面指南。那里的一切都很棒,但这两个特别有助于更多地了解这类事情。