【问题标题】:Better to spread across tables or use arrays for images and their attributes?更好地分布在表格中或使用数组来存储图像及其属性?
【发布时间】:2013-07-01 19:11:19
【问题描述】:

我正在构建我的第一个 Rails 应用程序,这是我第一次处理这种复杂程度的任何应用程序,我想知道设计数据库的最有效/最佳方式。

我有“东西”,每个“东西”都有价格和图片数量。

有A会不会更好:

具有 3 列的单个表 - id、价格、图像(作为数组或散列存储属性,例如宽度/高度、url 等)。

或者有B:

两张表,一张用于“事物”,一张用于“图像”,图像列是各种属性?然后让图像属于“事物”

谢谢

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 database-design


    【解决方案1】:

    您绝对应该选择 B。尽管与 things 相关联,但您将拥有 images 作为独立的存在。维护和扩展它会简单得多。

    【讨论】:

    • 这就是我所怀疑的。谢谢。
    【解决方案2】:

    与 B 一起使用。除此之外,请查看这些用于处理图像的 Gems:

    https://github.com/thoughtbot/paperclip

    https://github.com/carrierwaveuploader/carrierwave

    观看这些 RailsCasts 以了解如何使用它们:

    http://railscasts.com/episodes/134-paperclip

    http://railscasts.com/episodes/253-carrierwave-file-uploads

    您将希望从“事物”到图像建立一对多关联,请在此处阅读有关如何做到这一点的更多信息:

    http://guides.rubyonrails.org/association_basics.html#the-has-many-association

    别忘了以美分存储您的价格! :)

    【讨论】:

      猜你喜欢
      • 2011-02-03
      • 2019-06-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-01
      • 2014-04-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多