Django és un framework de desenvolupament web d'alt nivell per a Python que permet el desenvolupament ràpid i el disseny net i pragmàtic. Django està dissenyat per ajudar els desenvolupadors a crear aplicacions web ràpidament i amb menys codi. En aquesta secció, aprendrem els conceptes bàsics de Django i com començar a utilitzar-lo per desenvolupar aplicacions web.
Continguts
- Què és Django?
- Instal·lació de Django
- Creació d'un projecte Django
- Estructura d'un projecte Django
- Creació d'una aplicació Django
- Configuració de l'aplicació
- Rutes i Vistes
- Plantilles
- Models i Bases de Dades
- Migracions
- Admin de Django
- Què és Django?
Django és un framework de desenvolupament web que segueix el patró Model-View-Template (MVT). Proporciona una sèrie d'eines i funcionalitats que faciliten el desenvolupament d'aplicacions web robustes i escalables.
Característiques clau de Django:
- Ràpid: Permet desenvolupar aplicacions web ràpidament.
- Segur: Inclou proteccions contra les vulnerabilitats web més comunes.
- Escalable: Pot gestionar aplicacions de qualsevol mida.
- Versàtil: Utilitzat per a tot tipus de projectes, des de blogs fins a aplicacions empresarials.
- Instal·lació de Django
Per instal·lar Django, necessitem tenir Python i pip instal·lats al nostre sistema. Podem instal·lar Django utilitzant pip:
- Creació d'un projecte Django
Un projecte Django és una col·lecció de configuracions i aplicacions per a una aplicació web específica. Per crear un nou projecte Django, utilitzem el següent comandament:
Això crearà una estructura de directoris com la següent:
- Estructura d'un projecte Django
- manage.py: Un script que ajuda a gestionar el projecte.
- myproject/: El directori del projecte.
- init.py: Un fitxer buit que indica que aquest directori és un paquet Python.
- settings.py: Configuracions del projecte.
- urls.py: Definicions de les rutes del projecte.
- wsgi.py: Una entrada per a servidors web compatibles amb WSGI.
- Creació d'una aplicació Django
Una aplicació en Django és una part del projecte que fa una tasca específica. Per crear una aplicació, utilitzem el següent comandament dins del directori del projecte:
Això crearà una estructura de directoris com la següent:
- Configuració de l'aplicació
Per utilitzar l'aplicació en el projecte, hem d'afegir-la a la llista INSTALLED_APPS
en el fitxer settings.py
del projecte:
- Rutes i Vistes
Les rutes (URLs) defineixen com les sol·licituds HTTP són processades per l'aplicació. Les vistes són funcions o classes que gestionen aquestes sol·licituds i retornen respostes.
Definició de rutes en urls.py
de l'aplicació:
from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ]
Creació d'una vista en views.py
:
from django.http import HttpResponse def index(request): return HttpResponse("Hola, món! Aquesta és la pàgina principal de la meva aplicació.")
- Plantilles
Les plantilles són fitxers HTML que defineixen l'estructura i el disseny de les pàgines web. Django utilitza el seu propi motor de plantilles.
Creació d'una plantilla:
- Crear un directori
templates
dins del directori de l'aplicació. - Crear un fitxer HTML dins del directori
templates
.
<!-- myapp/templates/index.html --> <!DOCTYPE html> <html> <head> <title>Pàgina Principal</title> </head> <body> <h1>Hola, món!</h1> <p>Aquesta és la pàgina principal de la meva aplicació.</p> </body> </html>
Utilització de la plantilla en la vista:
- Models i Bases de Dades
Els models defineixen l'estructura de les dades i es mapegen a les taules de la base de dades.
Creació d'un model en models.py
:
from django.db import models class Article(models.Model): title = models.CharField(max_length=100) content = models.TextField() published_date = models.DateTimeField(auto_now_add=True)
- Migracions
Les migracions són una manera de propagar els canvis en els models a la base de dades.
Creació i aplicació de migracions:
- Admin de Django
Django inclou una interfície d'administració que permet gestionar les dades de l'aplicació.
Registre d'un model en l'admin:
Accés a l'admin:
- Crear un superusuari:
- Accedir a l'admin a través de
http://localhost:8000/admin
.
Resum
En aquesta secció hem après els conceptes bàsics de Django, incloent-hi la instal·lació, la creació de projectes i aplicacions, la configuració, les rutes i vistes, les plantilles, els models, les migracions i l'admin de Django. Amb aquests coneixements, estem preparats per començar a desenvolupar aplicacions web amb Django.
Curs de Programació en Python
Mòdul 1: Introducció a Python
- Introducció a Python
- Configuració de l'Entorn de Desenvolupament
- Sintaxi de Python i Tipus de Dades Bàsics
- Variables i Constants
- Entrada i Sortida Bàsiques
Mòdul 2: Estructures de Control
Mòdul 3: Funcions i Mòduls
- Definició de Funcions
- Arguments de Funció
- Funcions Lambda
- Mòduls i Paquets
- Visió General de la Biblioteca Estàndard
Mòdul 4: Estructures de Dades
Mòdul 5: Programació Orientada a Objectes
Mòdul 6: Gestió de Fitxers
- Lectura i Escriptura de Fitxers
- Treballant amb Fitxers CSV
- Gestió de Dades JSON
- Operacions amb Fitxers i Directoris
Mòdul 7: Gestió d'Errors i Excepcions
Mòdul 8: Temes Avançats
- Decoradors
- Generadors
- Gestors de Context
- Concurrència: Fils i Processos
- Asyncio per a Programació Asíncrona
Mòdul 9: Proves i Depuració
- Introducció a les Proves
- Proves Unitàries amb unittest
- Desenvolupament Guiat per Proves
- Tècniques de Depuració
- Ús de pdb per a la Depuració
Mòdul 10: Desenvolupament Web amb Python
- Introducció al Desenvolupament Web
- Conceptes Bàsics del Framework Flask
- Construcció d'APIs REST amb Flask
- Introducció a Django
- Construcció d'Aplicacions Web amb Django
Mòdul 11: Ciència de Dades amb Python
- Introducció a la Ciència de Dades
- NumPy per al Càlcul Numèric
- Pandas per a la Manipulació de Dades
- Matplotlib per a la Visualització de Dades
- Introducció al Machine Learning amb scikit-learn