我正在用django开发一个网站,我不知道如何构建我的项目。
让我们说我的项目树是:
main
├───_main
| ├── __init__.py
| ├── settings.py
| ├── urls.py
| └── wsgi.py
├───_accounts
| ├── models.py
| ├── forms.py
| ├── urls.py
| ├── views.py
| └── ...
└───_website
├──_static
| └──_website
| ├── css (...)
| └── js (...)
├──_templates
| └──_website
| └── (html files...)
├── urls.py
├── views.py
└── ...
我的项目' main'中有两个应用程序('帐户'和#39;网站')。 '帐户' app实现用户模型和身份验证过程。 '网站'应用程序控制非模型相关的东西,如主页等。当然,会有更多的应用......
此时,所有网络文件(html,css,js ...)都是“网站”中的商店。 (static / templates文件夹)和website / urls.py处理所有网址。
# website/urls.py
from django.conf.urls import url, include
from .views import index
from accounts.views import LoginView, LogoutView, RegisterView
urlpatterns = [
url(r'^$', index, name="index"),
# Accounts
url(r'^login/', LoginView.as_view(), name="login"),
url(r'^logout/', LogoutView.as_view(), name="logout"),
url(r'^register/', RegisterView.as_view(), name="register"),
]
对我来说,用户相关的网络文件,如登录表单,注册表单等,应该存储在帐户内的静态和模板目录中,以及处理网址(如&#39) ; / login',' / logout',' / register' ...)应由accounts / urls.py管理。这是对的吗?如果是这样,我该怎么做?
我想到的唯一一件事(未经测试)是包含main / urls.py中每个应用的每个urls.py文件:
# main/urls.py
from django.conf.urls import url, include
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^', include('website.urls', namespace="website")),
url(r'^', include('accounts.urls', namespace="accounts")),
]
但这看起来很奇怪......什么是正确的方法?
答案 0 :(得分:0)
我认为一定是
main
├───_main
| ├── __init__.py
| ├── settings.py
| ├── urls.py
| └── wsgi.py
├───_accounts
| ├── models.py
| ├── forms.py
| ├── urls.py
| ├── views.py
| └── ...
|
template-
|
static
└──
├── css
├── js
└── ...