Bygge en Python-webapplikasjon med Django

Django er et Python-nettrammeverk på høyt nivå som oppmuntrer til rask utvikling og ren, pragmatisk design. Den tar seg av mye av bryet med nettutvikling, og lar utviklere fokusere på å skrive appen i stedet for å finne opp hjulet på nytt. Denne artikkelen vil veilede deg gjennom å bygge en enkel nettapplikasjon ved hjelp av Django.

Komme i gang med Django

Før du kan begynne å bygge en Django-webapplikasjon, må du installere Django. Du kan installere Django ved å bruke pip, Pythons pakkeinstallasjonsprogram:

pip install django

Når Django er installert, kan du opprette et nytt Django-prosjekt ved å kjøre følgende kommando i terminalen eller ledeteksten:

django-admin startproject myproject

Denne kommandoen oppretter en ny katalog kalt mittprosjekt med de nødvendige filene for å komme i gang. Naviger til denne katalogen:

cd myproject

Opprette en Django-applikasjon

Inne i Django-prosjektet ditt kan du lage individuelle applikasjoner som håndterer spesifikk funksjonalitet. Du kan for eksempel ha en app for brukerautentisering, en annen for blogginnlegg osv. For å lage en app, kjør følgende kommando:

python manage.py startapp myapp

Dette oppretter en ny katalog kalt myapp som inneholder filer som models.py, views.py og tests.py, blant andre. Du definerer modellene, visningene og malene dine i denne appen.

Definere modeller

Django-modeller definerer strukturen til dataene dine og er representert som Python-klasser. Du definerer dem i models.py-filen i appen din:

from django.db import models

class BlogPost(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.title

Når du har definert modellene dine, må du lage databasetabeller for dem. Kjør følgende kommandoer for å bruke migreringene:

python manage.py makemigrations
python manage.py migrate

Opprette visninger og maler

Django-visninger håndterer logikken i applikasjonen din og samhandler med modeller for å gjengi data i maler. En enkel visning kan opprettes i filen views.py:

from django.shortcuts import render
from .models import BlogPost

def home(request):
    posts = BlogPost.objects.all()
    return render(request, 'home.html', {'posts': posts})

Koden ovenfor henter alle blogginnlegg fra databasen og sender dem til en mal kalt home.html. home.html-malen er lagret i en katalog kalt maler i appen din:

<!DOCTYPE html>
<html>
<head>
    <title>Blog Home</title>
</head>
<body>
    <h1>Blog Posts</h1>
    <ul>
    {% for post in posts %}
        <li>{{ post.title }} - {{ post.created_at }}</li>
    {% endfor %}
    </ul>
</body>
</html>

Konfigurering av nettadresser

For å koble visninger til URL-er, må du definere URL-mønstre. Opprett en fil med navnet urls.py i appkatalogen din og legg til følgende kode:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
]

Inkluder deretter denne appens URL-mønstre i hovedprosjektets urls.py-fil:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('myapp.urls')),
]

Kjører utviklingsserveren

Etter å ha satt opp modellene, visningene, malene og URL-ene dine, kan du kjøre Django-utviklingsserveren for å se nettapplikasjonen din i aksjon:

python manage.py runserver

Åpne en nettleser og naviger til http://127.0.0.1:8000/ for å se Django-nettprogrammet kjøre.

Konklusjon

Django gjør det enkelt å bygge kraftige og robuste nettapplikasjoner med Python. Denne veiledningen har dekket det grunnleggende om å sette opp et Django-prosjekt, lage en app, definere modeller, lage visninger og maler, konfigurere URL-er og kjøre utviklingsserveren. Med Django kan du enkelt bygge skalerbare og vedlikeholdbare webapplikasjoner.