class CreateServices < ActiveRecord::Migration
def change
create_table :services do |t|
t.references :parent_service # 親分類への再帰リレーション
t.string :service_id, null: false # サービスID
t.string :name, null: false # サービス名
t.text :note # 備考
t.timestamps
end
add_index :services, :parent_service_id
add_index :services, :service_id, unique: true
add_index :services, :name, unique: true
add_foreign_key :services, :services, column: 'parent_service_id'
end
end
class Service < ActiveRecord::Base
belongs_to :parent_service_id, class_name: 'Service'
has_many :child_services, class_name: 'Service', foreign_key: 'parent_service_id', dependent: :nullify
end