道歉,这是一个非常新手的问题,但最近两个星期我一直在努力在业余时间里解决这个问题。想通了,我看看是否有更聪明的想法可以提供帮助。
想法:
我该怎么做:
如果这是一个非常愚蠢的问题,谢谢您。 :)
编辑:此外,Github中的任何示例应用程序都很棒。
答案 0 :(得分:1)
无论您是否使用某种代码生成方式,我都不建议将它们硬编码到路由文件中。 Rails允许通用路由匹配。例如:
get '/:state', to: 'states#show'
get '/:state/:city', to: 'city#show'
注意:这是一个非常通用的匹配,因此请确保您的路由文件顺序正确,以免捕获其他特定路由。
答案 1 :(得分:1)
我同意Msencenb的观点,即在路由文件中对其进行硬编码不是可行的方法。但是,如果您不小心,则/:state /:city的路由将匹配两部分的内容,因为它非常通用(如前所述)。
您可以使用类似friendly_id的名称。它在自述文件顶部使用的示例实际上是状态。
自述文件:
With FriendlyId, it's easy to make your application use URLs like:
http://example.com/states/washington
instead of:
http://example.com/states/4323454
然后您可以为您的城市创建一条路线,例如:
http://example.com/states/minnesota/city/minneapolis