La suppression d'une table à partir d'un schéma Rails
Je veux supprimer une table dans mon schéma. J'ai créé la base de données quand j'ai commencé le projet et souhaitent la table supprimée. Quelle est la meilleure façon de le faire?
J'ai essayé rails g migration drop table :installs
mais cela crée un vide de la migration?
Schéma:
create_table "installs", force: :cascade do |t|
t.string "email", default: "", null: false
t.string "encrypted_password", default: "", null: false
t.string "reset_password_token"
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.integer "sign_in_count", default: 0, null: false
t.datetime "current_sign_in_at"
t.datetime "last_sign_in_at"
t.string "current_sign_in_ip"
t.string "last_sign_in_ip"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
add_index "installs", ["email"], name: "index_installs_on_email", unique: true
add_index "installs", ["reset_password_token"], name: "index_installs_on_reset_password_token", unique: true
Double Possible de Rails DB Migration - Comment faire Pour supprimer une Table?
Je dirais que ce n'est pas tout à fait un duplicata que c'est une question sur le schéma (même si ce n'est pas ce qui devrait être édité).
Je dirais que ce n'est pas tout à fait un duplicata que c'est une question sur le schéma (même si ce n'est pas ce qui devrait être édité).
OriginalL'auteur Bitwise | 2016-08-02
Vous devez vous connecter pour publier un commentaire.
Si vous créez un vide de la migration en cours d'exécution:
rails g migration DropInstalls
ou:
rails generate migration DropInstalls
Ensuite, vous pouvez ajouter ce dans le vide de la migration:
Puis exécutez
rake db:migrate
dans la ligne de commande qui devrait supprimer les Installe à la tableOriginalL'auteur Luka Kerr
Je trouve que c'est plus facile d'utiliser les Console Rails dans la résolution de ce problème. Supposons que vous souhaitez supprimer une 'commentaires', table à partir d'une application de blog. Vous pouvez le faire en effectuant les tâches suivantes à partir de la ligne de commande (par exemple, un Terminal).
Première étape:
Étape deux:
Étape trois:
Aller vérifier votre
schema.rb
de voir que la table a été supprimée.OriginalL'auteur WesleyAC