我对构建应用程序很陌生,所以我想问一下构建这些模型之间关系的最佳方法。Rails 4 Posgres勾画出模型和关系。我需要建议
文件夹,相册,图片
我使用Rails 4 Postgres的:
我试图创建相册,可容纳多张图片或者是空的,有东西以后增加。相册可能属于0个或更多文件夹,并且文件夹可能包含0个或更多个相册或零个或多个图像。图像可以属于一个文件夹,属于一个相册,通过一个相册属于一个文件夹,或者不属于一个文件夹或一个相册。他们都属于一个用户。
这就是我在脑海中勾画出来的。请让我知道你在想什么:
user
has_many :folders, :albums, images
folder
belongs_to :user
has_many :albums, :images
album
belongs_to :user, :folder
has_many :images
images
belongs_to :user, :folder, :albums
我感到困惑的是你怎么说CAN HAS_MANY或CAN belong_to,因为图像可以存在的一切之外,除了用户。
此外,路由看起来像这样。我不认为这会工作:
resource :user
resource :folder
resource :album
resource :image
我有一个很难包装我的头周围的什么会,再次因为一切都可以独立存在,除了用户一切的。
我是否需要对每个项目都有一个user_id引用? 是否需要在任何型号中使用任何belongs_to through
?
感谢您的帮助?
所以,后来的图像可以是独立于任何它属于的其他模型,这是否意味着我的模型可能非常接近正确?这是否也意味着我的路线会起作用? – Lenocam
我*认为*路线将适用于嵌套/关联的模型,但您可能需要添加额外的路线才能访问这些用户的上下文外部。 – errata
我的意图是在所有其他资源一个用户,甚至是图像。这些图像有时需要放在文件夹和相册之外。 – Lenocam