Ich möchte eine has_many-Beziehung zu zwei vorhandenen Tabellen/Modellen in meiner App hinzufügen & Ich bin mir nicht sicher, wie es zu di?Hinzufügen einer neuen has_many-Beziehung zu einem vorhandenen Modell
Als ich das tat, bevor mit einem neuen Modell die Schienen erzeugen Befehl behandelt alles, was für mich, mit nur rails generate model Photo image:string hikingtrail:references
gründete er die unter Migration
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
Jetzt würde ich eine Beziehung zwischen users
& photos
einrichten gerne mit jede user
has_many :photos
.
Wenn ich eine Migration erzeuge, um dies zu erreichen, enthält es nicht die add_index :photos, :user_id
, ist das etwas, was ich manuell tun sollte oder sind die folgenden Schritte genug, um diese Beziehung in meiner Datenbank einzurichten?
rails g migration AddUserIdToPhotos user_id:integer
die ...
class AddUserIdToPhotos < ActiveRecord::Migration
def change
add_column :photos, :user_id, :integer
end
end
& dann laufen ...
rake db erzeugt: wandern
Hallo rossmc - Entweder können Sie die Zeile add_index hinzufügen : fotos,: user_id manuell in oben genannten Migration oder Sie können tun, was Zippie vorgeschlagen hat. Aber in diesem Fall müssen Sie diese Zeile auch manuell schreiben. Danke Vikram – vikram