【问题标题】:How best to model reservation/appointments database in Rails如何最好地在 Rails 中为预订/约会数据库建模
【发布时间】:2013-07-08 16:23:30
【问题描述】:

我正在寻找编写某种 Rails 应用程序来帮助用户在餐厅预订时段。如何以这种方式对其进行建模,以便可以通过浏览器显示和预订预订?我有两个模型:

class Restaurant < ActiveRecord::Base
    has_many :reservations


class Reservation < ActiveRecord::Base
    belongs_to :restaurant

    attr_accessible :name, :date, :time

起初,我在 Restaurant 模型中使用哈希来存储可用性,使用日期作为键。但后来我意识到 Rails 数据库必须序列化哈希,我想在深入研究之前确保没有更好的方法来解决这个问题。

我正在使用 Postgres(如果相关)。任何帮助将不胜感激!

【问题讨论】:

    标签: ruby-on-rails database associations


    【解决方案1】:

    您的基本模型结构很好。请注意,attr_accessible 不是当前的最佳实践,从 Rails 4 开始。(它已被 strong parameters 取代)

    【讨论】:

      【解决方案2】:

      您使用什么数据库并不重要(尽管 PG 是一个可靠的选择),但真正重要的是通用工程。

      我不会给你一个复制粘贴的答案,但希望能给你一些方向。

      因此,一个餐厅全天可以有很多Reservations。我假设每家餐厅只能容纳这么多人,因此有某种类型的“reservation limit”并且Reservations不能重叠。

      由于限制,我想您的 2 模型方法会起作用。您只需要弄清楚它们必须如何交互才能按您的计划工作。

      餐厅应该能够跟踪开放时间/空缺(或任何重要细节)。而Reservations会跟踪聚会的人数、时间等。

      您的初始关系看起来很明确。但是另一个答案确实正确地指出了新的 Rails 4 首选方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-01-07
        • 2021-03-19
        • 2016-10-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-18
        相关资源
        最近更新 更多