Python Academy · Pelajaran

Paparan dan URL

Halakan permintaan kepada paparan

Pelajaran 3 daripada 413 langkah

Paparan dan URL ialah pelajaran Python Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Python Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Python Academy merangkumi sejumlah 4 pelajaran.

Apakah Paparan?

paparan Django ialah fungsi (atau kelas) yang menerima permintaan web dan mengembalikan respons web. Paparan mengandungi logik halaman anda dan disimpan dalam views.py aplikasi.

from django.http import HttpResponse

def home(request):
    return HttpResponse('Hello, world!')
print('A view takes request, returns response')

Argumen Permintaan

Setiap paparan menerima objek request yang menyimpan butiran tentang permintaan masuk: kaedah, data GET/POST, pengguna dan banyak lagi.

from django.http import HttpResponse

def info(request):
    return HttpResponse('Method: ' + request.method)
print('request carries the incoming data')

Corak URL

urls.py aplikasi memetakan laluan URL kepada paparan menggunakan senarai bernama urlpatterns dan fungsi path().

# blog/urls.py
from django.urls import path
from . import views

urlpatterns = [
    path('', views.home),
]
print('path maps a URL to a view')

Menamakan URL

Berikan sesuatu corak satu name supaya anda boleh merujuknya di tempat lain tanpa menetapkan laluan secara terus dalam kod.

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
]
print("name='home' lets you reference it later")

Parameter URL

Tangkap bahagian URL dengan penukar seperti <int:post_id>. Nilai yang ditangkap dihantar kepada paparan.

from django.urls import path
from . import views

urlpatterns = [
    path('post/<int:post_id>/', views.detail, name='detail'),
]
print('post/5/ -> detail(request, post_id=5)')

Membaca Parameter

Nilai yang ditangkap tiba sebagai argumen kata kunci yang sepadan dengan nama penukar.

from django.http import HttpResponse

def detail(request, post_id):
    return HttpResponse('Post ' + str(post_id))
print('View receives post_id')

Menyertakan URL Aplikasi

urls.py akar projek menyertakan URL setiap aplikasi dengan include(), sekali gus mengekalkan penghalaan yang modular.

# mysite/urls.py
from django.urls import path, include

urlpatterns = [
    path('blog/', include('blog.urls')),
]
print('include() wires up app urls')

Memaparkan Templat

Pintasan render() menggabungkan templat dengan kamus konteks dan mengembalikan HttpResponse.

from django.shortcuts import render

def home(request):
    return render(request, 'home.html', {'name': 'Alice'})
print('render combines template + context')

Pembantu 404

get_object_or_404() mendapatkan objek atau menghasilkan 404 jika objek itu tiada, iaitu corak yang biasa dan selamat.

from django.shortcuts import get_object_or_404, render
from .models import Post

def detail(request, post_id):
    post = get_object_or_404(Post, id=post_id)
    return render(request, 'detail.html', {'post': post})
print('get_object_or_404 handles missing data')

Menterbalikkan URL

Dalam Python, reverse('detail', args=[5]) membina URL daripada nama corak. Dalam templat, teg {% url %} melakukan perkara yang sama.

from django.urls import reverse
# reverse('detail', args=[5]) -> '/blog/post/5/'
# In a template: {% url 'detail' post.id %}
print('reverse builds URLs from names')

Paparan Berasaskan Kelas

Django turut menawarkan paparan berasaskan kelas seperti ListView dan DetailView yang mengendalikan corak biasa dengan kod yang lebih sedikit.

from django.views.generic import ListView
from .models import Post

class PostList(ListView):
    model = Post
print('ListView lists objects automatically')

Semakan Pantas

Uji pengetahuan anda tentang paparan dan URL.

Ringkasan

Anda telah menghalakan permintaan kepada paparan.

  • Paparan menerima request dan mengembalikan respons
  • urlpatterns + path() memetakan URL kepada paparan, secara pilihan dengan name
  • Penukar seperti <int:id> menangkap bahagian URL
  • include() menyambungkan URL aplikasi; render() dan get_object_or_404() ialah pintasan yang berguna
Percuma untuk bermula

Pelajari Python dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
76
Pelajaran
320

Soalan Lazim

Adakah pelajaran “Paparan dan URL” percuma?

Ya — teks penuh “Paparan dan URL” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Python Academy, tingkat taraf kepada CoddyKit PRO. Kursus Python Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Paparan dan URL”?

Halakan permintaan kepada paparan Anda berlatih Python Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Python Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Python Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.

Berapa lamakah pelajaran “Paparan dan URL” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Python Academy ini?

Ya. Setiap pelajaran Python Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Projek dan Aplikasi
  2. Model dan Migrasi
  3. Paparan dan URL
  4. Pentadbir Django
← Kembali ke Python Academy