C'est une connaissance superficielle de Django Newbie, mais je l'écrirai sous forme de mémorandum.
Lors de la création d'un nouveau projet dans Django, sur la ligne de commande
$ django-admin startproject project_name
Je pense que vous démarrez souvent un projet en tapant. Cette commande crée automatiquement un projet dans Django 1.8 avec une disposition de répertoire similaire à la suivante:
project_name/
manage.py
project_name/
__init__.py
settings.py
urls.py
wsgi.py
Dès le début, il serait très utile pour Newbie de se préparer dès le début, mais en fait, il semble y avoir un moyen de créer un projet dans l'état initial de votre choix sans ces fichiers créés automatiquement.
Créons maintenant un projet. Cette fois, je voudrais afficher "Hello, World!" Sur le navigateur en utilisant un fichier python. Créez un fichier appelé hello.py dans un répertoire approprié.
Commençons par créer une vue. Cela dit, c’est très simple,
hello.py
from django.http import HttpResponse
def index(request):
return HttpResponse('Hello, World!')
Tapez simplement. Il écoute une requête et renvoie une chaîne. C'est ce qui est décrit à l'origine dans view.py.
URL Patterns Vient ensuite le réglage des urlpatterns. Le modèle d'expression régulière détermine quelle vue est renvoyée pour quelle demande d'URL. Cette fois, une seule chaîne de caractères est affichée, il n'y a donc qu'un seul modèle d'URL. Cela sera également ajouté à hello.py.
hello.py
...
from django.conf.urls import url
urlpatterns = {
url(r'^$', index),
}
settings Ici, dans le projet par défaut, les paramètres minimum requis décrits dans settings.py, tels que ROOT_URLCONF et MIDDLEWARE_CLASSES, sont ajoutés à hello.py.
hello.py
...
from django.conf import settings
settings.configure(
DEBUG = True,
SECRET_KEY = 'secretkey',
ROOT_URLCONF = __name__,
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
)
C'est tout pour le code principal. Et ça. C'est un peu inquiétant par rapport au projet par défaut, mais cela fonctionne bien en tant que projet Django.
Afin de démarrer ce projet, importez sys.
hello.py
import sys
...
if __name__ == '__main__':
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
c'est tout.
Sur la ligne de commande
$ python hello.py runserver
Entrer. Ensuite, la même chaîne de caractères que lors du démarrage de manage.py du projet par défaut apparaît sur la ligne de commande, et lors de l'accès à http://127.0.0.1:8000/, "Hello, World!" S'affiche comme prévu. Je pense.
Maintenant, ce qui me rend heureux lorsque je crée un projet à partir de zéro comme celui-ci, c'est que je peux créer un projet différent en utilisant le projet que j'ai créé comme modèle. Par exemple, supposons que vous mettez le hello.py que vous venez de créer dans le répertoire suivant.
hello/
hello.py
Dans ce cas, bonjour est le nom du projet. Maintenant, créons un nouveau projet basé sur ce projet Hello.
Dans le même répertoire que votre projet hello, entrez la commande suivante:
$ django-admin startproject hoge --template=hello
Ensuite, au lieu de la présentation de projet par défaut de Django,
hoge/
hello.py
Le projet commencera avec une mise en page comme celle-ci. Tant que vous créez un modèle, vous pouvez modifier librement la mise en page en fonction de l'échelle et des fonctions du projet que vous créez.
Comme mentionné ci-dessus, je voudrais poster s'il y a des découvertes.
Recommended Posts