Une histoire d'une personne qui voulait importer django depuis le shell interactif de python et enregistrer des choses dans la base de données

Contexte

Je crée une application avec Django

--Exécuter un script Python pour explorer et récupérer des données --Format dans un script python

C'est le but, mais ici, j'accéderai à Django depuis Python et je le résumerai sous forme de DB et ferai ce que vous voulez.

Version etc.

Aller à l'histoire principale

Comme je l'ai mentionné au début, ce que je veux faire est d'importer l'application django à partir du shell interactif de python et de jouer avec à partir de là.

python_django.py


import os,sys,django

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "you_apps_name.settings") # *1

sys.path.append(r'/Users/kanuchi34/Projects/python/dj/quotes') # *2
 
django.setup() # *3

Annoter dans l'ordre

Note 1

Je n'ai pas encore compris ce que cela fait en détail, mais en bref, cela semble fournir des informations de base sur l'utilisation de DJANGO.

En fait, il semble y avoir plusieurs façons d'exécuter du code python, et l'une d'entre elles

manage.Appeler py avec exécution de code

Il y avait une méthode comme celle-ci, et quand je me suis demandé: «Je suis sûr que ce type prend en charge divers paramètres», j'ai trouvé ce code * 1.

En d'autres termes, django est django, et je pense qu'il appelle DJANGO_SETTING_MODULE, qui sera en python, et rend ensuite python et django disponibles.

Note 2

Ce code n'est pas mauvais à porter, mais vous pouvez l'omettre. Il semble nécessaire de transmettre le chemin python à l'environnement sous le répertoire de l'application.

Peu importe si vous n'exécutez pas le script python dans le répertoire de l'application.

Note 3

django.setup()

J'ai oublié d'appeler ça tout le temps et j'ai fait le tour pendant environ une heure. Je pense qu'il est possible de configurer l'environnement de django.

Si vous n'appelez pas cela, vous obtiendrez une déclaration d'erreur comme AppDirectryIsntReady et vous ne pourrez pas continuer

J'étais accro à

Tout le monde a écrit le ** your_apps_name ** dans la note * 1 que j'ai écrite dans cet article, et je n'ai pas du tout compris ce que cela signifiait (je me demande s'il y a des débutants).

1. config.local
2. myproj.settings
3. myapp.settings
4. local
5. config

J'ai finalement découvert en regardant manage.py, mais je me demande si je ne peux pas unifier cette zone. ..

Recommended Posts

Une histoire d'une personne qui voulait importer django depuis le shell interactif de python et enregistrer des choses dans la base de données
À propos de Python, à partir et à l'importation, comme
Une histoire sur tout, de la collecte de données au développement d'IA et à la publication d'applications Web en Python (3. développement d'IA)
Une histoire sur Python pop and append
Importer un fichier Excel depuis Python (enregistré dans DB)
Une histoire sur la modification de Python et l'ajout de fonctions
Étapes de l'installation de Python 3 à la création d'une application Django
Une histoire à propos d'un débutant en Python qui était sur le point d'être écrasé par ModuleNotFoundError: Aucun module nommé 'weepy'
Comment exécuter un programme Python à partir d'un script shell
Une histoire sur la tentative d'implémentation de variables privées en Python.
L'histoire d'un débutant participant à un projet de Django de la consolidation d'équipe à la sortie du produit en 6 semaines
Une histoire sur la façon d'étudier l'anglais par un élève stupide de grade Biri qui a augmenté son score TOEIC de 300 à 840 en un an et demi.
Une histoire sur l'ajout d'une API REST à un démon créé avec Python
Une histoire sur la tentative d'exécuter plusieurs versions de Python (édition Mac)
Python - Obtenez le taux de bitcoin BTC / JPY à partir de bitflyer à intervalles réguliers et enregistrez-le dans un fichier
Django: Importer une classe depuis une chaîne
Une histoire d'essayer d'exécuter JavaScripthon sur Windows et d'abandonner.
L'histoire d'avoir un regard doux et douloureux sur les utilisateurs personnalisés sur Django
Migration de Python2 vers Python3 (Python2 est reconstruit comme un environnement virtuel et coexiste)
L'histoire de l'abandon d'essayer de se connecter à MySQL en utilisant Heroku
Connectez-vous à postgreSQL depuis Python et utilisez des procédures stockées dans une boucle.
[python] Envoyez l'image capturée de la caméra Web au serveur et enregistrez-la
[python] Une histoire sur la collecte de noms de compte Twitter à partir de noms de descripteurs (comme @ 123456) en combinant BeautifulSoup et Excel entrée / sortie.
Une histoire sur la conversion de HTML en PDF avec WeasyPrint + matplotlib et l'intégration de graphiques [Les débutants apprennent python avec un livre de référence]