J'ai joué avec Django et Django ORM chez moi, et je dois dire que je pense que c'est l'un des meilleurs en termes de facilité d'utilisation.
Cependant, je me demandais s'il était possible de l'utiliser en "reverse".
En gros, ce que je voudrais faire, c'est générer des modèles Django à partir d'un schéma de base de données existant (à partir d'un projet qui n'utilise pas django et qui est assez ancien).
Est-ce possible?
Mise à jour: la base de données en question est Oracle
dev
version (avec plus d'insistance ?? peut-être pas ..)(Django 1.7.1) L'exécution simple
python manage.py inspectdb
créera des classes pour toutes les tables de la base de données et s'affichera sur la console.Enregistrez-le sous forme de fichier en utilisant la redirection de sortie Unix standard:
(Cela fonctionne pour moi avec mysql et django 1.9)
la source
J'ai créé une application réutilisable basée sur l'utilitaire de commande inspectdb de django, Django Inspectdb Refactor .
Cela divise les modèles en différents fichiers dans le dossier des modèles d'une base de données existante. Cela aide à gérer les modèles lorsqu'ils deviennent nombreux.
Vous pouvez l'installer via pip:
Enregistrez ensuite l'application dans settings.py en tant que
inspectdb_refactor
Après cela, vous pouvez l'utiliser à partir de la ligne de commande comme:
Cela créera avec succès un dossier de modèles avec toutes les tables sous forme de fichiers de modèle différents dans votre application. Par exemple:
Plus de détails peuvent être trouvés ici.
la source
get_meta() missing 1 required positional argument: 'is_partition'
. Utilisation de django 2.0