Ruby on rails 不确定如何在ActiveRecord中建模

Ruby on rails 不确定如何在ActiveRecord中建模,ruby-on-rails,ruby-on-rails-3,activerecord,Ruby On Rails,Ruby On Rails 3,Activerecord,我正在制作一个简单的事件系统(像物理事件,而不是软件事件)。它具有以下结构。每个活动都会有一组时间段(比如音乐活动、开场白、healiner等)。每个事件槽都是对标记的引用。现在我有以下几点,但我认为这是行不通的: class Event < ActiveRecord::Base #id primary key has_many :event_slots, :order => "sort desc" has_many :tags, :through => :eve

我正在制作一个简单的事件系统(像物理事件,而不是软件事件)。它具有以下结构。每个活动都会有一组时间段(比如音乐活动、开场白、healiner等)。每个事件槽都是对标记的引用。现在我有以下几点,但我认为这是行不通的:

class Event < ActiveRecord::Base
  #id primary key
  has_many :event_slots, :order => "sort desc" 
  has_many :tags, :through => :event_slots 
end

# event_slots will be populuated with tag_id
class EventSlot < ActiveRecord::Base
  # event_id, tag_id; will also have a sort value to sort these
  belongs_to :event
  belongs_to :tag
end
class事件“sort desc”
有多个:标记,:至=>:事件\u插槽
结束
#事件\u插槽将使用标记\u id进行填充
类EventSlot
问题是事件槽将有一个标记id。换句话说,我们将添加标记并将它们关联到位(就像在web表单中物理到位)

class标记
我不确定这种建模是否有效。有没有关于如何实施/改进的想法?这件事似乎做得不对


thx应该可以正常工作。我可能会尝试使用比EventSlots更好的名称,因为它所代表的内容并不直观。如果它的目标是音乐市场,像Acts这样的东西也许更有意义

在事件模型上使用类似于accepts_nested_attributes_的东西可以帮助消除对第二个嵌套模型(Act/EventSlot)的控制器的需要。如果你还没有的话,看看


最后,我会考虑不使用你自己的标签系统。已经有很多经过良好测试的gem可用于提供所需的功能。查看以找到一个可能适合您的需求。

您需要提供更多关于您试图实现的目标的信息。什么是eventslot?为什么需要对这些进行建模?eventslot下存储了哪些字段?就试图实现的目标而言,这似乎非常简单。“将它们关联到适当的位置”是什么意思?标记将在jquery表单之前填充或通过jquery表单创建-从建模pov中,标记id将在slotI同意的情况下出现。我不知道你到底在问什么。谢谢看-我看了一些标签系统,它们似乎有太多的错误,无法解释。可能的话,我会创建一个第二个系统,将其输入到一个预构建的标签系统中,这样,如果我不喜欢它,我就可以将它替换掉,然后放入一个新的标签系统。把它推得尽可能远
class Tag < ActiveRecord::Base
  has_many :event_slots
end