Intento mantener un esquema de nombres un tanto coherente en mis plantillas HTML. Es decir. index.html para main, delete.html para eliminar página y así sucesivamente. Pero el cargador app_directories
siempre parece cargar la plantilla desde la aplicación que está en primer lugar alfabéticamente.Vista de Django: cargar la plantilla desde el directorio de la aplicación que llama primero
¿Hay alguna forma de comprobar siempre si hay una coincidencia en el directorio templates
de la aplicación que realiza la llamada primero?
ajustes pertinentes en mi settings.py
:
PROJECT_PATH = os.path.realpath(os.path.dirname(__file__))
TEMPLATE_LOADERS = (
'django.template.loaders.app_directories.load_template_source',
'django.template.loaders.filesystem.load_template_source',
)
TEMPLATE_DIRS = (
os.path.join(PROJECT_PATH, 'templates'),
)
He intentado cambiar el orden de TEMPLATE_LOADERS
, sin éxito.
Editar conforme a lo solicitado por Ashok:
estructura Dir de cada aplicación:
templates/
index.html
add.html
delete.html
create.html
models.py
test.py
admin.py
views.py
En views.py de cada aplicación:
def index(request):
# code...
return render_to_response('index.html', locals())
def add(request):
# code...
return render_to_response('add.html', locals())
def delete(request):
# code...
return render_to_response('delete.html', locals())
def update(request):
# code...
return render_to_response('update.html', locals())
le puede proporcionar la estructura de directorio de su 'plantillas' y un código de ejemplo de la forma en que va a cargar/representación de la plantilla – Ashok
El cargador app_directories suena un poco engañoso para mí. Hubiera supuesto que cargaría plantillas desde el directorio de aplicaciones correcto al igual que usted. Después de todo, ¿no es el objetivo de una aplicación django crear divisiones separadas? – Adam