今天跟蛋黄讨论关于route的性能问题,经过跟踪调试发现,具名路由的实现相当简单,并且性能也相当好。
在服务器启动时,
map.resources会生成相应的路由的对象,比如
map.resources :blogs
会生成若干个named routes地址的对象
比如:
edit_blog,对象类型是ActionController::Routing::Route,其中有个to_s方法,是此named route的URL
当前台在调用:
link_to 'edit',edit_blog
时
link_to的代码非常简单的调用了edit_blog.to_s方法
由此看来,named route虽比不上a标签的速度,但速度也相当可以了。