Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyelesaikan TypeError Django: paparan mestilah boleh dipanggil dalam Corak URL?

Bagaimana untuk Menyelesaikan TypeError Django: paparan mestilah boleh dipanggil dalam Corak URL?

Barbara Streisand
Barbara Streisandasal
2024-10-22 08:03:30758semak imbas

How to Resolve Django's TypeError: view must be a callable in URL Patterns?

Corak URL Django: Memahami TypeError: paparan mestilah boleh dipanggil

Untuk versi Django 1.10 dan seterusnya, mesej ralat tertentu mungkin timbul apabila mentakrifkan corak URL: TypeError: paparan mestilah boleh dipanggil atau senarai/tuple dalam kes include(). Ralat ini berlaku apabila cuba menentukan paparan sebagai rentetan dalam corak URL, amalan yang biasa digunakan dalam versi Django terdahulu.

Penyelesaian:

Untuk menyelesaikan ralat ini, ia adalah diperlukan untuk mengemas kini urls.py anda untuk memasukkan paparan sebenar yang boleh dipanggil. Ini memerlukan pengimportan paparan dalam fail urls.py anda. Contohnya:

from django.conf.urls import include, url

from django.contrib.auth.views import login
from myapp.views import home, contact

urlpatterns = [
    url(r'^$', home, name='home'),
    url(r'^contact/$', contact, name='contact'),
    url(r'^login/$', login, name='login'),
]

Penyelesaian Alternatif:

Jika anda mempunyai bilangan tontonan yang banyak, mengimportnya secara individu boleh menyusahkan. Pendekatan alternatif ialah mengimport modul paparan daripada apl anda:

from django.conf.urls import include, url

from django.contrib.auth import views as auth_views
from myapp import views as myapp_views

urlpatterns = [
    url(r'^$', myapp_views.home, name='home'),
    url(r'^contact/$', myapp_views.contact, name='contact'),
    url(r'^login/$', auth_views.login, name='login'),
]

Menggunakan alias seperti myapp_views dan auth_views menghalang perlanggaran nama paparan apabila mengimport paparan daripada berbilang apl.

Tambahan Maklumat:

Untuk mendapatkan maklumat yang lebih komprehensif tentang corak penghantaran URL, rujuk dokumentasi rasmi penghantar URL Django:

[Django URL dispatcher docs](https://docs.djangoproject. com/ms/stable/topik/http/urls/)

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan TypeError Django: paparan mestilah boleh dipanggil dalam Corak URL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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