Memahami Asas Django

王林
Lepaskan: 2024-07-26 11:15:21
asal
448 orang telah melayarinya

Understanding Django Fundamentals

Dalam blog sebelumnya, kami menyediakan persekitaran pembangunan kami dan mencipta projek dan aplikasi Django asas. Kini, tiba masanya untuk menyelami lebih mendalam aspek asas Django, termasuk struktur projeknya, seni bina Model-View-Template (MVT) dan antara muka pentadbir Django. Menjelang akhir siaran ini, anda harus mempunyai pemahaman yang kukuh tentang konsep ini dan bersedia untuk membuat aplikasi blog yang mudah.

Gambaran keseluruhan

Blog ini akan menyelidiki aspek asas Django, termasuk struktur projeknya, seni bina MVT dan antara muka pentadbir Django.

Topik yang diliputi

  • Struktur Projek Django
  • Model, Paparan dan Templat (MVT)
  • Pentadbir Django

Objektif

  • Fahami seni bina MVT
  • Buat model, paparan dan templat dalam Django
  • Gunakan antara muka pentadbir Django

Struktur Projek Django

Memahami struktur projek Django adalah penting untuk menavigasi dan mengatur kod anda dengan berkesan. Apabila anda mencipta projek dan apl Django baharu, struktur direktori berikut dijana:

myproject/
    manage.py
    myproject/
        __init__.py
        settings.py
        urls.py
        wsgi.py
        asgi.py
    blog/
        __init__.py
        admin.py
        apps.py
        models.py
        tests.py
        views.py
        migrations/

Salin selepas log masuk
  • manage.py: Utiliti baris arahan yang membantu mengurus projek Django.
  • myproject/: Direktori projek utama yang mengandungi tetapan dan konfigurasi.
  • settings.py: Tetapan konfigurasi untuk projek.
  • urls.py: Pengisytiharan URL untuk projek.
  • wsgi.py dan asgi.py: Mata masuk untuk pelayan web serasi WSGI/ASGI.
  • blog/: Direktori apl Django yang mengandungi fail khusus aplikasi.

Model, Paparan dan Templat (MVT)

Django mengikut seni bina Model-View-Template (MVT), yang merupakan variasi corak MVC. Seni bina ini menggalakkan pemisahan kebimbangan yang bersih, menjadikan kod anda lebih teratur dan boleh diselenggara.

model

Model mentakrifkan struktur jadual pangkalan data anda. Setiap model ialah kelas Python yang menyamakan django.db.models.Model.

# blog/models.py

from django.db import models

class Post(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField()
    published_date = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.title

Salin selepas log masuk

Pandangan

Paparan mengendalikan logik dan pemprosesan data untuk aplikasi anda. Mereka menerima permintaan, berinteraksi dengan model dan membalas respons.

# blog/views.py

from django.shortcuts import render
from .models import Post

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

Salin selepas log masuk

templat

Templat mentakrifkan struktur HTML dan pembentangan halaman web anda. Ia boleh memasukkan kandungan dinamik dengan menggunakan teg dan penapis templat Django.

<!-- blog/templates/blog/home.html -->

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Blog Home</title>
</head>
<body>
    <h1>Blog Posts</h1>
    {% for post in posts %}
        <h2>{{ post.title }}</h2>
        <p>{{ post.content }}</p>
        <p>Published on: {{ post.published_date }}</p>
    {% endfor %}
</body>
</html>

Salin selepas log masuk

Konfigurasi URL

Untuk memetakan URL kepada paparan, corak URL perlu dikonfigurasikan dalam urls.py.

# myproject/urls.py

from django.contrib import admin
from django.urls import path
from blog import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', views.home, name='home'),
]

Salin selepas log masuk

Pentadbir Django

Antara muka pentadbir Django ialah alat yang berkuasa untuk mengurus data aplikasi anda tanpa menulis sebarang kod tambahan. Ia secara automatik menjana antara muka mesra pengguna untuk model anda.

Menyediakan Pentadbir Django

  • Daftar Model: Daftar model anda dengan tapak pentadbir untuk menjadikannya tersedia dalam antara muka pentadbir.
# blog/admin.py

from django.contrib import admin
from .models import Post

admin.site.register(Post)

Salin selepas log masuk
  • Buat Pengguna Super: Buat pengguna super untuk mengakses antara muka pentadbir.
python manage.py createsuperuser

Salin selepas log masuk
  • Akses Antara Muka Pentadbir: Mulakan pelayan pembangunan dan navigasi ke http://127.0.0.1:8000/admin/. Log masuk dengan bukti kelayakan superuser anda untuk mengurus data anda.

Kesimpulan

Itu adalah gambaran keseluruhan proses untuk menulis permohonan dalam Django. Nantikan bahagian seterusnya siri ini, di mana kami akan menggunakan apa yang telah kami pelajari untuk mencipta aplikasi blog yang mudah.

Atas ialah kandungan terperinci Memahami Asas Django. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan