Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails [modelname]\u路径方法在哪里实现?_Ruby On Rails_Ruby_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails [modelname]\u路径方法在哪里实现?

Ruby on rails [modelname]\u路径方法在哪里实现?,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,有人能告诉我这个方法是在哪里实现的吗?rail 4的幕后发生了什么 谢谢创建一个资源丰富的路由将向应用程序中的控制器和视图公开许多帮助程序(生成命名路由) 对于资源:照片: photos_path returns /photos new_photo_path returns /photos/new edit_photo_path(:id) returns /photos/:id/edit (for instance, edit_photo_path(10) returns /photos/10/

有人能告诉我这个方法是在哪里实现的吗?rail 4的幕后发生了什么


谢谢创建一个资源丰富的路由将向应用程序中的控制器和视图公开许多帮助程序(生成命名路由)

对于资源:照片:

photos_path returns /photos
new_photo_path returns /photos/new
edit_photo_path(:id) returns /photos/:id/edit (for instance, edit_photo_path(10) returns /photos/10/edit)
photo_path(:id) returns /photos/:id (for instance, photo_path(10) returns /photos/10)
这些帮助程序中的每一个都有一个对应的_url帮助程序(例如照片_url),该帮助程序返回相同的路径前缀,并带有当前主机、端口和路径前缀

ActionDispatch::Routing::Mapper::Base模块负责生成这些帮助程序。

我建议您查看一下导轨的布线指南。


使用命令rake routes可以查看定义的所有路由的列表

有趣的部分在类
ActionDispatch::Routing::RouteSet
中。添加命名路由(请参阅)时,Rails将动态添加名为
“#{route}\u path”
(请参阅)的方法

Rails在内部使用,这允许您在运行时动态定义方法