查看Journey Router(它是Rails 4.0路由器)的Readme,它是空的。我想知道路由器在概念上如何工作,如果这个“抽象”语法正在抓住这个想法,路由器就像迷你编程语言一样:
ROUTE := GET|POST|PUT|DELETE path
path := (static_path) | (dynamic_path)
那么,Rails 4.0路由器如何工作?
答案 0 :(得分:10)
如果您想了解Rails路由,最好的起点是边缘指南中的Rails Routing from the Outside In。
在此之后,您会看到ActionDispatch::Routing
的{{3}}更多运气。
注意:以下内容与Journey v1.0.4有关,这是撰写本文时的最新内容。
Journey本身是Rails 3.2中的Rails路由引擎docs。在发行说明中,它用一个声明来描述:“由于新的introduced引擎,路由识别也变得更快。”当然,这并不是关于Journey的大量信息,但是Rails没有描述每个实现细节;这需要永远! :) Journey的Journey也用自己的声明描述:“Journey是路由器。它路由请求。”
你可以查看gemspec,但是在v1.0.4中,它有非常稀疏的文档(Journey :: Router :: Utils.normalize_path(path)是api docs)而不是{{ 3}}以及它的documented和code itself问题。你可以看看另一个S.O.标记为open的帖子。
有些代码只是通过方法名称等在closed中有点自我描述。 Journey journey也是了解其运作方式的好方法。
关于代码本身的一些注释:
rails c
然后是Journey::Path::Pattern.new(9)
)Journey here可能会很有趣,也可以(在Journey :: GTG :: TransitionTable中注意here方法)。示例可视化visualizer和在线演示visualizer目前。