Liste de toutes les tâches
Vous pouvez trouver toutes les tâches liées aux bases de données que Rails propose en exécutant la commande suivante depuis le répertoire d'une application Rails.
blog (main) bin/rails help | grep db:
db:create
db:drop
...
Résumé
db:create : Crée la base de données, sauf si elle existe déjà.
db:drop : Abandonne la base de données si elle existe.
db:environment:set : Corrige le EnvironmentMismatchError
o NoEnvironmentInSchemaError
Ce message est soulevé si les données d'environnement ne sont pas trouvées dans le schéma, en définissant l'environnement actuel dans la table interne.
db:fixtures:load : Il charge les fixtures, c'est-à-dire les données types contre lesquelles vous voulez tester. Ils sont stockés dans le fichier YAML sous l'onglet test/fixtures/
répertoire.
db:migrate : Exécute toutes les migrations qui n'ont pas encore été exécutées, pour l'environnement actuel.
db:migrate:down : Annule les transformations effectuées par la dernière migration. up
en exécutant la méthode down
méthode.
db:migrate:redo : Recule la base de données d'une migration et effectue une nouvelle migration.
db:migrate:status : Affiche l'état des migrations.
db:migrate:up : Exécute le up
pour une migration donnée.
db:prepare : Runs setup
si la base de données n'existe pas. Sinon, il exécute les migrations.
db:reset : Réinitialise votre base de données en utilisant vos migrations pour l'environnement actuel. Cela se fait en exécutant la commande db:drop
, db:create
, db:migrate
tâches.
db:rollback : Fait rouler le schéma vers la version précédente, en annulant la migration que vous venez d'exécuter. Si vous souhaitez annuler les précédentes n
migrations, passer STEP=n
à cette tâche.
db:schema:cache:clear : Efface le fichier db/schema_cache.yml généré par l'application db:schema:cache:dump
tâche.
db:schema:cache:dump : Crée un fichier db/schema_cache.yml.
db:schema:dump : Crée un fichier de schéma de base de données (soit db/schema.rb
o db/structure.sql
en fonction de config.active_record.schema_format
).
db:schema:load : Charge un fichier de schéma de base de données (soit db/schema.rb
o db/structure.sql
en fonction de config.active_record.schema_format
) dans la base de données.
db:semence : Charge les données de la graine à partir de db/seeds.rb
fichier.
db:seed:replant : Tronque les tables de chaque base de données pour l'environnement actuel et charge les graines.
db:setup : Crée toutes les bases de données db:create
, charge tous les schémas db:schema:load
et s'initialise avec les données de base db:seed
. Cependant, il n'abandonnera pas la base de données en premier lieu si elle existe. Utilisez db:reset
de supprimer aussi toutes les bases de données d'abord.
db:structure:dump : Déprécié. Il était utilisé pour vider le structure.sql
fichier. db:structure:charge : Déprécié. Il était utilisé pour charger le structure.sql
fichier.
Pour connaître l'historique des raisons pour lesquelles ces tâches ont été supprimées, consultez cette page. wtf . Non, sérieusement .
db:système:changement : Running rails new
sans spécifier de base de données place votre application avec sqlite
. C'est une corvée de changer la base de données plus tard. Cette tâche vous permet de modifier facilement la base de données en déléguant à l'administrateur de la base de données la tâche de modifier la base de données. rails db:change SYSTEM=postgresql|mysql|whatever
générateur.
db:version : Imprime le numéro de la version actuelle du schéma.
Source : Toutes les tâches liées aux bases de données dans Rails
10 votes
Fait
rake --tasks
Aide ?0 votes
Vous devriez consulter ce blog. jacopretorius.net/2014/02/
0 votes
Votre compréhension de
rake db:migrate
est correcte, mais votre compréhension derake db:reset
est fausse. Voir la réponse la plus haute, de Moritz.1 votes
De plus, à partir de Rails 5, ces commandes peuvent être invoquées en tant que
rails db:migrate
,rails db:reset
,rails db:schema:load
. Voir stackoverflow.com/questions/38403533/