Django - создание главной страницы без расширения с обработкой запросов (не напрямую к шаблону) - PullRequest
0 голосов
/ 12 мая 2018

Я очень новичок в Django, хотя прохождение урока, как запускать различные приложения внутри проекта, мне ясно, но я не настраиваю индексную страницу всего сайта.

Внутрипапка моего проекта выглядит примерно так:

Имя проекта

Приложение 1

Приложение 2

Приложение 3

Я хочу создатьURL с путем выглядит примерно так

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

urlpatterns = [
    path('', include('index.urls')), #Homepage url
    path('App1/', include('App1.urls')),
    path('accounts/', include('django.contrib.auth.urls')),
    path('App2/', include('App2.urls')),
    path('App3/', include('App3.urls')),
    path('admin/', admin.site.urls),
]

Так что вы можете посетить http://127.0.0.1:8000/ (или website.com) и увидеть страницу индекса с соответствующим представлением, которое я могу использовать для отображения контента избаза данных.

Возможно, это так же просто, как создать приложение-индекс и установить путь к (''), но я не смог этого сделать.

1 Ответ

0 голосов
/ 12 мая 2018

Вы можете просто создать index представление внутри приложения (например, app1) и использовать это представление непосредственно с urlpatterns, например так:

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

urlpatterns = [
    path('', views.index), #Homepage url
    path('App1/', include('App1.urls')),
    path('accounts/', include('django.contrib.auth.urls')),
    path('App2/', include('App2.urls')),
    path('App3/', include('App3.urls')),
    path('admin/', admin.site.urls),
]

Или, если вы хотите сохранить index в undex.urls необходимо добавить в index.urls пустой путь к файлу:

# index urls.py
from django.urls import path

from . import views

urlpatterns = [
    path('', views.index, name='index'),
]


# project urls.py
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('', include('index.urls')), #Homepage url
    path('App1/', include('App1.urls')),
    path('accounts/', include('django.contrib.auth.urls')),
    path('App2/', include('App2.urls')),
    path('App3/', include('App3.urls')),
    path('admin/', admin.site.urls),
]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...