Guia d'inici de Django: crea ràpidament la teva primera aplicació web
Guia d'inici de Django: crea ràpidament la teva primera aplicació web
Django és un framework web Python d'alt nivell, amb l'objectiu de desenvolupar ràpidament i amb un disseny concís. Segueix l'arquitectura Model-Template-View (MTV), fomentant la reutilització de codi i la componentització. Aquesta guia us guiarà pas a pas per crear una aplicació Django senzilla, per començar ràpidament.
1. Configuració de l'entorn
Primer, heu d'assegurar-vos que teniu Python instal·lat al vostre sistema. Django recomana utilitzar Python 3.6 o posterior.
1.1 Instal·lació de Python
Si el vostre sistema no té Python instal·lat, podeu descarregar-lo i instal·lar-lo des del lloc web oficial de Python.
1.2 Creació d'un entorn virtual (Virtual Environment)
Per aïllar les dependències entre diferents projectes, es recomana encaridament utilitzar un entorn virtual.
-
Obriu un terminal o un símbol del sistema.
-
Creeu un directori de projecte, per exemple
myproject:mkdir myproject cd myproject -
Creeu i activeu l'entorn virtual:
python3 -m venv venv # O python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # WindowsDesprés d'activar l'entorn virtual, el vostre indicador de terminal mostrarà
(venv), indicant que esteu utilitzant l'entorn virtual.
1.3 Instal·lació de Django
En l'entorn virtual activat, utilitzeu pip per instal·lar Django:
pip install Django
Verifiqueu si la instal·lació ha tingut èxit:
python -m django --version
Hauríeu de poder veure el número de versió de Django.
2. Creació d'un projecte Django
Després d'instal·lar Django, podeu crear un nou projecte Django.
-
Encara al vostre directori de projecte (
myproject), executeu l'ordre següent:django-admin startproject mysiteAixò crearà un directori anomenat
mysiteal directorimyproject, que conté els fitxers d'esquelet del projecte Django. -
Entreu al directori
mysite:cd mysite -
L'estructura de directoris del projecte Django és la següent:
mysite/ manage.py mysite/ __init__.py settings.py urls.py asgi.py wsgi.pymanage.py: Una eina de línia d'ordres per gestionar el projecte Django.mysite/: Paquet Python que conté la configuració del projecte.__init__.py: Un fitxer buit que indica a Python que el directori s'ha de considerar un paquet Python.settings.py: El fitxer de configuració del projecte, com ara la configuració de la base de dades, el mode de depuració, etc.urls.py: Configuració d'encaminament d'URL, que assigna URL a funcions de visualització.asgi.py: Fitxer de configuració ASGI (Asynchronous Server Gateway Interface), utilitzat per desplegar aplicacions asíncrones.wsgi.py: Fitxer de configuració WSGI (Web Server Gateway Interface), utilitzat per desplegar aplicacions síncrones tradicionals.## 3. Inicia el servidor de desenvolupament
Django inclou un servidor de desenvolupament lleuger que facilita el desenvolupament i les proves locals.
-
A la directori
mysite, executeu l'ordre següent:python manage.py runserver -
Obriu el navegador i visiteu
http://127.0.0.1:8000/. Hauríeu de veure la pàgina "It worked! Congratulations on your first Django-powered page.".
4. Crea una aplicació Django
Un projecte Django pot contenir diverses aplicacions. Creem una aplicació anomenada myapp.
-
Obriu una nova finestra de terminal (manteniu el servidor de desenvolupament en funcionament).
-
A la directori
mysite, executeu l'ordre següent:python manage.py startapp myapp
Això crearà un directori anomenat myapp al directori mysite, que conté els fitxers d'esquelet de l'aplicació Django.
-
L'estructura de directoris de l'aplicació Django és la següent:
myapp/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.py views.py__init__.py: Un fitxer buit que indica a Python que el directori s'ha de considerar un paquet Python.admin.py: S'utilitza per configurar el backend d'administració de Django.apps.py: Configuració de l'aplicació.migrations/: S'utilitza per gestionar les migracions de la base de dades.models.py: Defineix els models de dades (taules de la base de dades).tests.py: Escriu casos de prova.views.py: Defineix les funcions de visualització, gestiona les sol·licituds i retorna les respostes.
-
A
mysite/settings.py, afegiumyappa la llistaINSTALLED_APPS:INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'myapp', # Afegiu myapp ]
5. Crea una vista senzilla
Ara creem una vista senzilla per mostrar "Hello, Django!" al navegador.
-
Editeu el fitxer
myapp/views.pyi afegiu el codi següent:from django.http import HttpResponse def index(request): return HttpResponse("Hello, Django!") -
Creeu un fitxer
myapp/urls.pyi assigneu l'URL a la funció de visualització:from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ] -
Inclou
myapp/urls.pyamysite/urls.py:from django.urls import include, path from django.contrib import admin urlpatterns = [ path('admin/', admin.site.urls), path('myapp/', include('myapp.urls')), # Afegeix la configuració d'URL de myapp ] -
Visita
http://127.0.0.1:8000/myapp/. Hauries de veure la pàgina "Hello, Django!".
6. Crea un model
Creem un model senzill per emmagatzemar algunes dades.
-
Edita el fitxer
myapp/models.py, afegeix el codi següent:from django.db import models class Question(models.Model): question_text = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') def __str__(self): return self.question_textAixò defineix un model anomenat
Question, que conté dos camps:question_text(CharField) ipub_date(DateTimeField). -
Crea i aplica les migracions de la base de dades:
python manage.py makemigrations myapp python manage.py migrateL'ordre
makemigrationscrearà fitxers de migració basats en el teu model, i l'ordremigrateaplicarà les migracions a la base de dades.
7. Utilitza el panell d'administració de Django
Django proporciona un potent panell d'administració que facilita la gestió de les teves dades.
-
Crea un superusuari:
python manage.py createsuperuserSegueix les instruccions per introduir el nom d'usuari, el correu electrònic i la contrasenya.
-
Edita el fitxer
myapp/admin.py, registra el modelQuestion:from django.contrib import admin from .models import Question admin.site.register(Question) -
Visita
http://127.0.0.1:8000/admin/, inicia sessió amb el superusuari que has creat. Hauries de veure el mòdul "Questions", on pots afegir, editar i suprimir preguntes.
8. Utilitza plantilles
L'ús de plantilles pot generar pàgines HTML de manera més flexible.
-
Crea un directori anomenat
templatesal directorimyapp, i crea un directori anomenatmyappal directoritemplates(myapp/templates/myapp). -
Crea un fitxer anomenat
index.htmlal directorimyapp/templates/myapp, afegeix el codi següent:Hello, Django! The current time is: {{ current_time }} -
Edita el fitxer
myapp/views.py, utilitza la plantilla:from django.shortcuts import render import datetime def index(request): now = datetime.datetime.now() return render(request, 'myapp/index.html', {'current_time': now})La funció
rendercarregarà la plantilla i passarà les dades a la plantilla per renderitzar-la. (La funciórendercarregarà la plantilla i passarà les dades a la plantilla per renderitzar-la.) -
Torna a visitar
http://127.0.0.1:8000/myapp/. Hauries de poder veure la pàgina que conté l'hora actual.
9. Conclusió
A través d'aquesta guia, has après els conceptes bàsics i els mètodes d'ús de Django, incloent-hi la configuració de l'entorn, la creació de projectes i aplicacions, la definició de models, la creació de vistes i l'ús de plantilles. (A través d'aquesta guia, has après els conceptes bàsics i els mètodes d'ús de Django, incloent-hi la configuració de l'entorn, la creació de projectes i aplicacions, la definició de models, la creació de vistes i l'ús de plantilles.) Això és només el començament, Django ofereix una gran varietat de funcions, pots continuar aprenent i explorant, construint aplicacions web més complexes.





