ruby-on-rails – Rails路由 – 斜杠字符与哈希字符
发布时间:2020-12-17 03:23:37 所属栏目:百科 来源:网络整理
导读:在URL和rails路由中,使用斜杠字符与井号(井号)字符有什么区别? 这些工作 get "/static_pages/about"get 'about',to: 'static_pages#about',as: :about 这些没有 get "/static_pages#about"get 'about',to: 'static_pages/about',as: :aboutget 'about',to:
在URL和rails路由中,使用斜杠字符与井号(井号)字符有什么区别?
这些工作 get "/static_pages/about" get 'about',to: 'static_pages#about',as: :about 这些没有 get "/static_pages#about" get 'about',to: 'static_pages/about',as: :about get 'about',to: '/static_pages#about',as: :about 什么代码控制着这种行为,背后的深层原因是什么? 回答: (这两个人回答得非常好,我很难选择哪一个标记为接受的答案.我希望以不同的方式表达我对答案的理解,这可能对人们有所帮助.) 使用/符号后,字符串将被识别为附加到基本URL的URL字符串.所以’#’字符将被解释为url的一部分,而url不喜欢使用’#’字符. 在不使用/字符的情况下,第一个单词以某种方式被识别为控制器名称,您可以使用“#”和操作名称进行跟进. 解决方法
#into:’static_pages#about’表示static_pages_controller的操作.语法是controller#action.
当你定义get“/ static_pages#about”时,static_pages#about成为路由的控制器,即#只是一个字符文字而#about并不意味着操作.如果static_pages#about controller不存在,则应该丢失:控制器错误. 以下路由定义为您提供/关于映射到static_pages / about控制器关于操作的路径,其中static_pages可以是命名空间或范围. get 'about',as: :about 以下路由无效,并且由于前导斜杠/输入选项而应该抛出错误. get 'about',as: :about (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |