2011-10-25 42 views
3

我有一个模型叫publication.rb和一个叫user.rb的模型。用户可以选择订阅各种出版物,并将偏好设置为多久以及哪些特定部分接收来自每个不同出版物的电子邮件。导轨 - 如何将路线映射到多个模型

因此,用户可以选择接收的酒吧B.从酒馆和每月每周电子邮件

我的问题是,我怎么去,因为这此设置的路线是CRUD用于在用户和出版物?

谢谢。

+0

你打算怎样来存储用户的偏好是什么,他们的电子邮件频率?我觉得你可能想要一个连接模型,比如UserSubscriptions,它具有用户和发布的关键字,但是还有其他字段用于电子邮件频率和任何其他想要跟踪的首选项。然后,您可以路由到出版物,但首选项的表单实际上是UserSubscription的一个实例。 – kafuchau

+0

是的,用户首选项存储在一个丰富的连接模型中。 – noob

回答

1

这是嵌套路由的情况。

resources :publications 
resources :users do 
    resources :publications do 
     // methods for subcription 
    end 
end 

现在,您可以访问的URL像订阅:

/users/ID/publications/A/subscribe 
/users/ID/publications/B/subscribe 

但URL的这样的管理:

/publications/new 
/publications/A/edit 
etc... 
+0

谢谢,我会试试这个。 – noob

+0

如果我在混合中有单独的偏好模型,这将如何改变? – noob

+0

我最初的反应是将偏好嵌入到用户内的孩子中,但我不确定这是否是“轨道方式” – noob

相关问题