gpt4 book ai didi

ruby-on-rails - 在嵌套资源中自动添加父模型 ID

转载 作者:行者123 更新时间:2023-12-04 06:17:34 27 4
gpt4 key购买 nike

在 Rails 3 中使用嵌套资源路由,例如:

resources :magazines do
resources :ads
end

定义了诸如 magazine_ad_path 之类的助手,我必须将杂志和广告都传递给它,如果我只有对广告的引用,这会很不方便:

magazine_ad_path(@ad.magazine, @ad)

有没有一种很好的方法来设置一个 ad_path 助手,它接受 @ad 并返回适当的地址,包括杂志 ID? (这也将允许使用 link_to @adredirect_to @ad 等,它们会自动调用与模型类。)

最佳答案

浅路由似乎是您正在寻找的。您可以按如下方式实现浅嵌套:

resources :magazines do
shallow do
resources :ads
end
end

resources :magazines, :shallow => true do
resources :ads
end

只有索引和新 Action 是嵌套的。

使用嵌套资源往往会生成长 URL,浅嵌套有助于删除某些操作不一定需要的部分(也包含父资源路由)(因为父资源可以从持久化的子记录中派生) .

关于ruby-on-rails - 在嵌套资源中自动添加父模型 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5462652/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com