1

ここ ( http://allaboutruby.wordpress.com/2009/08/08/5-minute-project-in-rails/ ) では、テーブル間に 1-m リレーションを作成する方法を確認できますが、作成するにはどのような手順を実行すればよいですか?たとえば、次の種類のテーブル間の関係:

http://docs.oracle.com/cd/E14373_01/appdev.32/e13363/issue_track_obj.htm

簡単にするために、関係を作成する方法だけuser can have several created by him bugs and can be assigned to the several bugs created by other users.

ありがとう。

4

1 に答える 1

2

まず、bugs テーブルには、creator_id と assignee_id の 2 つの列が必要です。次に、次の関係を作成します。

class User < ActiveRecord::Base
  has_many :created_bugs, :class_name => 'Bug', :foreign_key => :creator_id
  has_many :assigned_bugs, :class_name => 'Bug', :foreign_key => :assignee_id
end

class Bug < ActiveRecord::Base
  belongs_to :creator, :class_name => 'User'
  belongs_to :assignee, :class_name => 'User'
end
于 2013-09-11T20:39:13.523 に答える