Come posso assegnare un nome di tabella diverso con l'aggiunta di chiave esterna. per esCome aggiungere chiave esterna nella migrazione di rotaie con nome tabella diverso
Ho un modello come
class MyPost < ActiveRecord::Base
has_many :comments, class_name: PostComment
end
class PostComment < ActiveRecord::Base
belongs_to :post, class_name: MyPost
end
ora voglio cambiare il mio file di migrazione in questo modo:
class CreatePostComments < ActiveRecord::Migration
def change
create_table :post_comments do |t|
t.belongs_to :post, index: true
t.timestamps null: false
end
add_foreign_key :post, :class_name => MyPost
end
end
Ma non sta funzionando. La migrazione è stata annullata. Come posso cambiare il mio file di migrazione per lavorare con la mia struttura del modello.
't.belongs_to: posta, indice: true' creato la chiave esterna per voi . Perché stai ancora provando? Non riesco a ottenere quello che stai cercando di fare .. –
Qual è l'errore generato dalla tua migrazione? – nayiaw