English 中文(简体)
铁路:这是模仿这种方式的最佳方式——和_归属者_to_many协会
原标题:Rails: what is the best way to model this has_and_belongs_to_many association

请允许我说,我有两种模型<代码>Event和Person

许多人参加了一次活动,一个人也可以参加许多活动。

class Event < ActiveRecord::Base
  has_and_belongs_to_many :people
end

class Person < ActiveRecord::Base
  has_and_belongs_to_many :events
end

create_table "events_people", :id => false, :force => true do |t|
  t.integer "event_id"
  t.integer "person_id"
end

The problem is that an event is presented by one or many speakers. So for a particular event, we should have people who attend that event and one or many speakers who are, of course, people too.

我如何这样做? 谢谢。

最佳回答

为此:

class Event < ActiveRecord::Base
  has_and_belongs_to_many :people
  has_and_belongs_to_many :speakers, :class_name => "Person"
end

您将有一个<代码>events_speakers加入的表格,该表格将与event_id person_id相匹配。 (请在<条码>人民表中注明。)

问题回答

暂无回答




相关问题
摘录数据

我如何将Excel板的数据输入我的Django应用? I m将PosgreSQL数据库作为数据库。

Postgres dump of only parts of tables for a dev snapshot

On production our database is a few hundred gigabytes in size. For development and testing, we need to create snapshots of this database that are functionally equivalent, but which are only 10 or 20 ...

How to join attributes in sql select statement?

I want to join few attributes in select statement as one for example select id, (name + + surname + + age) as info from users this doesn t work, how to do it? I m using postgreSQL.

What text encoding to use?

I need to setup my PostgreSQL DB s text encoding to handle non-American English characters that you d find showing up in languages such as German, Spanish, and French. What character encoding should ...

SQL LIKE condition to check for integer?

I am using a set of SQL LIKE conditions to go through the alphabet and list all items beginning with the appropriate letter, e.g. to get all books where the title starts with the letter "A": SELECT * ...

热门标签