我的应用有一个Company model
和User models
,我一直在研究path/url
结构,并设法让我的工作如何使用嵌套资源,如代码所示下面。
我已使用FriendlyID
将company_names
和usernames
添加到模型中,这些模型一切正常。
路径现在看起来我希望他们看起来如何:www.mydomain.com/company_name/username
的routes.rb
resources :companies, :path => '/', only: [:show] do
# constraints has been added for usernames that include a '.'
resources :users, :path => '/', only: [:show], :constraints => { :id => /.*/ }
end
问题:我仍然需要添加新公司记录的功能,但它将不再有效。我知道这是由于改变路线,但我不明白如何解决这个问题,因为它一直在观看
www.mydomain.com/companies/new
作为username
'新'的未知用户。
如果有人能指出我正确的方向或给我一点努力,我将不胜感激。
答案 0 :(得分:1)
您已设置only: [:show]
,这意味着只允许使用show方法。
要创建公司,需要添加:new
和:create
。
像这样only: [:new, :create, :show]
注意:强>
在路由文件中添加或更改smth后,请务必使用rake routes
,Rails 5也支持rails routes
。
您可以看到可用的路线!