Vorrei aggiungere una relazione has_many a due tabelle/modelli esistenti nella mia app & Non sono sicuro di come farlo?aggiunta di una nuova relazione has_many a un modello esistente
Quando ho fatto questo prima con un nuovo modello di binari generano comando gestito tutto per me, con appena rails generate model Photo image:string hikingtrail:references
ha creato la migrazione di sotto
class CreatePhotos < ActiveRecord::Migration
def change
create_table :photos do |t|
t.string :image
t.references :hikingtrail
t.timestamps
end
add_index :photos, :hikingtrail_id
end
end
Ora vorrei impostare una relazione tra users
& photos
con ogni user
has_many :photos
.
Quando si genera una migrazione per ottenere ciò, non include lo add_index :photos, :user_id
, è qualcosa che dovrei fare manualmente o sono i passaggi di seguito sufficienti per impostare questa relazione nel mio database?
rails g migration AddUserIdToPhotos user_id:integer
che crea ...
class AddUserIdToPhotos < ActiveRecord::Migration
def change
add_column :photos, :user_id, :integer
end
end
& quindi eseguire ...
rake db: migrate
Hi rossmc - O si può aggiungere l'add_index linea di : foto,: user_id manualmente nella migrazione sopra o puoi fare ciò che Zippie ha suggerito. Ma anche in questo caso dovrai scrivere quella linea manualmente. Grazie Vikram – vikram