[PYTHON] De 0 à la construction de l'environnement de développement Django à l'exploitation de base

Puisqu'il s'agit d'un mémorandum et de parents, il est écrit tout simplement. Je pense que les débutants devraient également se référer à d'autres articles.

Note de version

J'ai principalement travaillé sur python 2.7.10 et Django 1.6. Veuillez noter les points suivants lorsque vous travaillez avec la série python 3, Django 1.9

Sélectionnez la version appropriée lorsque $ pyenv install Sélectionnez la version appropriée lorsque $ pip install django. (La dernière version 1.9 est incluse par défaut)

On a l'impression qu'une base de données est créée d'un seul coup après l'écriture d'un modèle avec Django 1.6 $ python manage.py syncdb. Après avoir écrit le modèle comme 1.9 Après avoir créé un fichier de migration avec $ python manage.py makemigrations app name C'est comme créer une base de données à partir d'un fichier de migration avec $ python manage.py migrate.

Voilà (probablement).

1. Construction de l'environnement

1-1. Installez pyenv

Installer depuis GitHub

$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv

(~ / .pyenv est le nom du répertoire local. Donnez-lui un nom approprié) Écrivez les paramètres pyenv dans zshenv, bash_profile, etc.

export PYENV_ROOT=$HOME/.pyenv
export PATH=$PYENV_ROOT/bin:$PATH
eval "$(pyenv init -)"

(Réécrivez $ HOME à l'emplacement d'installation de pyenv selon le cas) Redémarrez Shell pour que les paramètres prennent effet.

$ exec $SHELL

1-2. Installation de python

Installez python depuis pyenv.

$ pyenv install 2.7.10

Définissez la version installée.

$ pyenv global 2.7.10
$ pyenv rehash

Vérification

$ pyenv versions
* 2.7.10 (set by /hoge/.pyenv/version)

1-3. Installation de Django et création de projets de test

Installez Django 1.6 à partir de pip

$ pip install django==1.6

Créer un projet de test

$ django-admin.py startproject mysite

Démarrage du serveur

$ cd mysite
$ python manage.py runserver

Accédez à http: // localhost: 8000 et vérifiez si le serveur est en cours d'exécution.

2. Projet de test Django

2-1. Utilisation de base

Références principales Création de votre première application Django, partie 1 | Documentation Django 1.4

Modification du fichier de paramètres (setting.py)

Modifiez les paramètres liés à DB. Par défaut, sqlite est utilisé, mais cette fois PostgreSQL est utilisé. Voir Notes sur l'activation de PostgreSQL avec Django | Qiita On suppose qu'un nouvel utilisateur et une nouvelle base de données sont créés en installant la bibliothèque postgresql, etc. en se référant au site ci-dessus.

setting.py

DATABASES = {
    'default': {
        # 'ENGINE': 'django.db.backends.sqlite3',
        # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'mysite',
        'USER': 'djangouser',
        'PASSWORD': 'pass',
        'HOST': '127.0.0.1',
        'PORT': 5432,
    }
}

Créer une table

Exécutez la commande suivante pour créer la table utilisée par l'application décrite dans INSTALLED_APPS dans setting.py.

$ python manage.py syncdb

(La commande syncdb recherche le paramètre INSTALLED_APPS et crée la table requise sur la base de données en fonction des paramètres de base de données dans settings.py.)

Créer une application

$ python manage.py startapp polls

(polls est le nom de l'application)

Créer un modèle

polls/models.py


from django.db import models

class Poll(models.Model):
    question = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')

class Choice(models.Model):
    poll = models.ForeignKey(Poll)
    choice = models.CharField(max_length=200)
    votes = models.IntegerField()

Faites connaître à votre projet les applications de sondages

Réécrivez les paramètres pour informer le projet de l'application de sondages. Ajout de polls dans ʻINSTALLED_APPS`.

setting.py


INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
    # 'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',
    'polls',
)

Afficher SQL à partir du modèle créé

$ python manage.py sql polls
BEGIN;
CREATE TABLE "polls_poll" (
    "id" serial NOT NULL PRIMARY KEY,
    "question" varchar(200) NOT NULL,
    "pub_date" timestamp with time zone NOT NULL
)
;
CREATE TABLE "polls_choice" (
    "id" serial NOT NULL PRIMARY KEY,
    "poll_id" integer NOT NULL REFERENCES "polls_poll" ("id") DEFERRABLE INITIALLY DEFERRED,
    "choice" varchar(200) NOT NULL,
    "votes" integer NOT NULL
);
COMMIT;

Émettez une instruction SQL à partir du modèle et écrivez-la dans la base de données

$ python manage.py syncdb

Jouez à l'API de Django dans le shell interactif de Python

Voir Création de votre première application Django, partie 1 | Documentation Django 1.4 plutôt que de jouer avec l'API.

Lancez le shell interactif de python.

$ python manage.py shell

(Jouons différemment en référence au site ci-dessus)

En passant, en cours de lecture, polls / models.py a été réécrit comme suit.

polls/models.py


import datetime
from django.utils import timezone
from django.db import models

class Poll(models.Model):

    question = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')

    def __unicode__(self):
        return self.question

    def was_published_recently(self):
        return self.pub_date >= timezone.now() - datetime.timedelta(days=1)


class Choice(models.Model):

    poll = models.ForeignKey(Poll)
    choice = models.CharField(max_length=200)
    votes = models.IntegerField()

    def __unicode__(self):
        return self.choice

Recommended Posts

De 0 à la construction de l'environnement de développement Django à l'exploitation de base
Mémo de construction de l'environnement de développement Django
construction de l'environnement de développement de projet django
Construction de l'environnement de développement Python 2020 [De l'installation de Python à l'introduction à la poésie]
[Pour les débutants] Django -Construction d'environnement de développement-
De Ubuntu 20.04 introduction à la construction d'environnement
Construction de l'environnement Django
construction d'environnement django
[Google App Engine] Flux de la construction de l'environnement de développement à la création de l'application
Construction de l'environnement du projet Django
De la création de l'environnement Kivy à l'affichage de Hello World
Construction de l'environnement de développement Python
Construction de l'environnement de développement python2.7
De la construction d'environnement Python à la construction d'environnement virtuel avec anaconda
[Memo] Environnement de développement Django
Développement Django à l'aide des procédures virtualenv de la construction de l'environnement virtuel à la création d'un nouveau projet / nouvelle application et à la configuration initiale
Procédure pour convertir un fichier python en exe à partir de la construction de l'environnement Ubunts
Construction de l'environnement Docker + Django + React
[MEMO] [Construction de l'environnement de développement] Python
[MEMO] [Construction de l'environnement de développement] wine
[AWS] J'ai essayé d'utiliser EC2, RDS, Django. Construction de l'environnement à partir de 1
De la construction de l'environnement au déploiement pour flask + Heroku avec Docker
Déployez Django + React à partir de zéro vers GKE (1) Développement backend - Nginx + Django
Procédure de la construction de l'environnement au test de fonctionnement de testinfra, un outil de test d'environnement de serveur réalisé par Python
Construction de l'environnement Mac + Eclipse (PyDev) + Django
[Django] Mémorandum de procédure de construction d'environnement
[Python3] Construction de l'environnement de développement << Édition Windows >>
Construction de l'environnement de développement Python sur macOS
[MEMO] [Construction de l'environnement de développement] Jupyter Notebook
Mémo de construction de l'environnement de développement Emacs Python
Mémo de construction de l'environnement de développement Ubuntu Desktop 20.04
Construction de l'environnement de développement (version 2020, WSL2 + VcXsrv)
pynq-z1 De l'achat au contrôle de fonctionnement
Tutoriel d'apprentissage en profondeur de la construction d'environnement
Construction de l'environnement de développement Django avec Docker-compose + Nginx + uWSGI + MariaDB (édition macOS)
Développement LINEbot, je souhaite vérifier le fonctionnement dans l'environnement local
De la construction de l'environnement PyCUDA à la programmation GPGPU sur Mac (MacOS 10.12 Sierra)
Construction de l'environnement de développement Mac OS X Mavericks 10.9.5
Procédure de construction de l'environnement de développement Python (anaconda) (SpringToolsSuites) _2020.4
Développement d'applications WEB à l'aide de django-Construction d'environnement de développement-
[Python] Road to snakes (1) Construction de l'environnement
Construction de l'environnement de développement Python3 + venv + VSCode + macOS
Procédure du développement AWS CDK (Python) à la construction de ressources AWS * Pour les débutants
Commencez avec Python en 30 minutes! Créer un environnement de développement et apprendre la grammaire de base
Construction de l'environnement de développement Mac OS X Yosemite 10.10
Mémo de construction de l'environnement de développement Mac OS X
Construction d'un environnement de développement pour l'atelier Choreonoid
Création d'un environnement de développement Python pour Windows + gVim + Poetry
[De base] Unifiez tout, de la tabulation à la création du tableau de bord! Développement d'applications de visualisation de données avec Python et Dash ~ Présentation de Dash, construction d'environnement, exécution d'exemples ~
pynq-z1 De l'achat au contrôle de fonctionnement
N'a pas changé de Python 2 à 3
De l'installation de ROS pour Windows au contrôle de fonctionnement
De 0 à la construction de l'environnement de développement Django à l'exploitation de base
Somme de 1 à 10
Comment créer un article à partir de la ligne de commande
Ajoutons-le à la variable d'environnement à partir de la commande ~
Modèle de construction d'environnement de développement local Python [Flask / Django / Jupyter avec Docker + VS Code]
Essayons le projet de génération de musique TensorFlow "Magenta" du réglage de l'environnement de développement à la génération de chansons.
Collecter des informations depuis Twitter avec Python (construction de l'environnement)
Introduction à Python Préparons l'environnement de développement
Jusqu'à la création de l'application Django par terminal (environnement de développement)
[Python] Créer un environnement de développement Django avec Docker
[Développement Remotte] Passer du mode administrateur au mode développeur
Kotlin / Procédure de construction et d'installation de l'environnement de développement natif et tutoriel
De l'installation de ROS pour Windows au contrôle de fonctionnement