【问题标题】:Rails directory database structureRails 目录数据库结构
【发布时间】:2009-06-06 19:03:08
【问题描述】:

我正在用 Ruby on Rails 构建一个“小型”个人网络应用程序。我已经对其进行了设置,以便使用 MySQL 数据库。

我的想法是,我将使用这个应用程序存储和导航多种数据(笔记、书签、电影和应用程序评级)。 我想在伪目录结构中对这些数据进行索引/分类。 (目录结构只存在于数据库中——不存在于实际目录中)

例如书签可以存储在 Root -> Bookmark -> Funny -> Keyboard cat

现在我看到了this question,但我现在不知道该解决方案是否是在 Rails 应用程序中执行此操作的最佳方式。 与我上面链接的问题中的解决方案类似的解决方案也是我的想法。但也可以添加一个额外的表格,其中包含文件夹及其内容之间的关系。

问题是如何构建模型和数据库? (“正确”的方式)

更新:(@Dave 和其他标注者) 是的,我考虑过标签。起初我实际上要问一个更大的问题,但我无法以简洁的方式做到这一点。交易是它也将可以标记项目。实际上,目录是标签——你可以说我想要两种组织事物的方式——“结构化”标签(目录)和“免费”标签(旧的常规标签)。但这是一个完全不同的故事......

现在我只想看看“正确”的方式来解决目录问题的 rails 模型和数据库结构。

【问题讨论】:

  • @qff,根据您的更新,我的答案的第一部分就是您想要的。只是一系列一对多的关系。 (即 has_many 和 belongs_to 放在适当的模型中)。

标签: ruby-on-rails database-design


【解决方案1】:

听起来你想要一系列一对多的关系,如果它真的在模仿目录结构的话。例如。图片(如“键盘猫”)只能属于一个类别(如“搞笑”),而每个类别可以有很多张图片。

但是,您可能需要重新考虑目录结构并选择更灵活的东西,例如标签。因为如果 'keyboard cat' 不仅仅属于 'Funny',它将打破定义标准目录式结构的一对多关系。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-04
    • 2010-09-20
    • 1970-01-01
    • 1970-01-01
    • 2010-11-26
    • 1970-01-01
    相关资源
    最近更新 更多