기존 장고 웹 사이트에 장고 오스카 샵을 추가하려고합니다.다른 앱과 함께 django-oscar를 사용하는 방법?
내 문제는 두 템플릿이 어떻게 든 충돌하기 때문에 기존 웹 사이트 나 상점을 볼 수 있지만 둘 다 볼 수는 없다는 것입니다.
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
# os.path.join(BASE_DIR, 'templates'),
OSCAR_MAIN_TEMPLATE_DIR
],
# 'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
'oscar.apps.search.context_processors.search_form',
'oscar.apps.promotions.context_processors.promotions',
'oscar.apps.checkout.context_processors.checkout',
'oscar.apps.customer.notifications.context_processors.notifications',
'oscar.core.context_processors.metadata',
'main.context_processors.google_analytics'
],
'loaders': [
'django.template.loaders.app_directories.Loader',
'django.template.loaders.filesystem.Loader',
],
},
},
]
나는 로더의 순서를 전환하면 어느 원래 웹 사이트 (응용 프로그램에서 '주'
from django.conf.urls import include, url
from django.contrib import admin
from oscar.app import application
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^', include('main.urls')),
# oscar
url(r'^shop/', include(application.urls)),
]
그리고 설정에서
: 여기 은 무엇보다 중요한의 urls.py입니다), 또는 오스카 상점, 더 이상 액세스 할 수 없습니다/볼 수 있습니다. 따라서 내가 간과하고있는 난해한 세부 사항을 확신 할 수 없으며, 문서는 이것을 다루지 않습니다. 건배.
구체적으로 잘못된 것은 무엇입니까? 템플릿이 완전히로드되지 않습니까? 아니면 잘못된 템플릿이 렌더링됩니까? 또한 어떤 템플릿 구조를 가지고 있습니까? 기본 템플릿의 이름은 무엇입니까? – solarissmoke
index.html은 base.html에서 상속받은 좋은 예입니다. 처음에 app_directories_loader가 설정된 루트에 액세스하면 잘로드됩니다. 로더를 전환 할 때 오스카에서 온 index.html을 보여주고있는 것 같습니다 (내용은 공백이지만 오스카 favicon이 있습니다). 그래서 기본적으로 틀린 틀을 렌더링하고, 어떻게 든 그것들은 똑같은 이름을 가진 것처럼 보입니다. 오스카 템플릿 이름이 제 제어 할 수 없기 때문에이 문제를 어떻게 해결할 수 있을지 모르겠습니다. – Meiji