簡體   English   中英

如何指定Django后端?

[英]How to specify Django backend?

我不明白我的Django后端規范有什么問題

These are my urls

from django.contrib import admin
from django.urls import path,include
from django.conf.urls import url
from store import views

urlpatterns = [
    url(r'^', include('store.urls')),
    url(r'^accounts', include('registration.backends.default.urls')),
    path('admin/', admin.site.urls),
]

這是樹狀結構

bookstore
├── bookstore
│   ├── __init__.py
│   ├── __pycache__
│   │   ├── __init__.cpython-36.pyc
│   │   ├── settings.cpython-36.pyc
│   │   ├── urls.cpython-36.pyc
│   │   └── wsgi.cpython-36.pyc
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── db.sqlite3
├── manage.py
├── requirements.txt
└── store
    ├── admin.py
    ├── apps.py
    ├── __init__.py
    ├── migrations
    │   ├── 0001_initial.py
    │   ├── 0002_auto_20180604_0751.py
    │   ├── __init__.py
    │   └── __pycache__
    │       ├── 0001_initial.cpython-36.pyc
    │       ├── 0002_auto_20180604_0751.cpython-36.pyc
    │       └── __init__.cpython-36.pyc
    ├── models.py
    ├── __pycache__
    │   ├── admin.cpython-36.pyc
    │   ├── __init__.cpython-36.pyc
    │   ├── models.cpython-36.pyc
    │   ├── urls.cpython-36.pyc
    │   └── views.cpython-36.pyc
    ├── templates
    │   ├── registration
    │   │   ├── activate.html
    │   │   ├── activation_complete.html
    │   │   ├── activation_email_subject.txt
    │   │   ├── activation_mail.txt
    │   │   ├── registration_complete.html
    │   │   └── registration_form.html
    │   ├── store.html
    │   └── template.html
    ├── tests.py
    ├── urls.py
    └── views.py

現在當我嘗試python manage.py runserver時我得到了 在此處輸入圖片說明

還在終端顯示給我

Not Found: /accounts
[05/Jun/2018 09:08:17] "GET /accounts HTTP/1.1" 404 5632

如果我去

url(r'^accounts/', include('registration.backends.default.urls')),

那我有

1. ^accounts/

....

當前路徑,帳戶,與這些都不匹配。

如何解決這個問題? Django后端如何工作? 我正在使用2.0.5版本。

使用path而不是url

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


urlpatterns = [
    path('', include('store.urls')),
    path('accounts/', include('registration.backends.default.urls')),
    path('admin/', admin.site.urls),
]

順便說一下,如果Django版本<= 1.11,請使用url path是在2.0之后添加的)

嘗試使用

url(r'^accounts/', include('registration.backends.default.urls')),
url(r'^/', include('store.urls')),

而不是

url(r'^accounts', include('registration.backends.default.urls')),
url(r'^', include('store.urls')),

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM