5
मैं इसरेल
class CreateProjects < ActiveRecord::Migration
def change
create_table :projects do |t|
t.string :title
t.text :description
t.boolean :public
t.references :user, index: true, foreign_key: true
t.timestamps null: false
end
end
end
यह परियोजनाओं तालिका में किसी स्तंभ नाम user_id बनाता है की तरह एक प्रवास वर्ग परियोजना है में विदेशी कुंजी स्तंभ का नाम बदलें, लेकिन मैं स्तंभ OWNER_ID तो मैं बजाय project.owner उपयोग कर सकते हैं नामकरण करना चाहते हैं project.user का।
#app/models/project.rb
class Project < ActiveRecord::Base
belongs_to :owner, class_name: "User", foreign_key: :user_id
end
या
$ rails g migration ChangeForeignKeyForProjects
# db/migrate/change_foreign_key_for_projects.rb
class ChangeForeignKeyForProjects < ActiveRecord::Migration
def change
rename_column :projects, :user_id, :owner_id
end
end
तो
:
मैं पता लगाने के लिए कि 'rename_column' भी नाम बदलने अनुक्रमित का ख्याल रखता है खुश था । – Subtletree
आप 't.rename' –
के साथ [' change_table'] (http://apidock.com/rails/ActiveRecord/ConnectionAdapters/SchemaStatements/change_table) का भी उपयोग कर सकते हैं मुझे अज्ञात विशेषता 'new_id' मिलती है? –