У меня есть один проект Django, в котором есть два разных приложения Django, MyApp1 и MyApp2 (сменили названия).
Структура выглядит следующим образом:
MyProject
MyApp1
static
templates
urls.py
views.py
...
MyProject
settings.py
urls.py
...
Я написал MyApp2 как отдельное приложение в другом проекте Django и интегрировал его с проектом MyProject (pip install MyApp2). Вот установленные приложения в файле settings.py:
# Application definition
INSTALLED_APPS = [
'MyApp1',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'MyApp2',
]
Это следующие пути (urls.py) MyProject.
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('myapp1/', include('myapp1.urls')),
path('', include('myapp1.urls')),
path('myapp2/',include('myapp2.urls')),
]
Это следующие пути (urls.py) MyApp1:
from django.urls import path
from . import views
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
path('about/', views.about, name='about'),
path('contact/', views.contact, name='contact'),
]
Это следующие пути (urls.py) MyApp2:
from django.urls import path
from . import views
urlpatterns = [
path('', views.login, name='login'),
path('index', views.home, name='home'),
path('dashboard_output', views.dashboard_output, name='dashboard_output'),
path('login', views.login, name='login'),
]
В браузере, если я наберу http://127.0.0.1:8000/ или http://127.0.0.1:8000/myapp1 Я получаю представление MyApp1.
В браузере, если я набираю http://127.0.0.1:8000/myapp2, я получаю представление MyApp2 (страница входа в систему).
Пока все хорошо, но если я наберу http://127.0.0.1:8000/myapp2/index, система направит меня к представлению myapp1 вместо представления myapp2. Что я делаю неправильно? Есть идеи?