1
votes

Django référençant le chemin html vers un autre répertoire

Je suis nouveau sur Django. J'étudie simplement pour afficher des pages HTML dans mon application. J'ai un répertoire d'applications nommé myapp . Dans ce répertoire lui-même, j'ai créé un hello.html . C'est un simple fichier HTML. Ma fonction d'affichage est,

django.template.loaders.app_directories.Loader: /home/user/anaconda3/lib/python3.7/site-packages/django/contrib/admin/templates/hello.html (Source does not exist)

Lorsque j'exécute ma page, j'obtiens l'erreur suivante.

def hello(request):
   today = datetime.datetime.now().date()
   return render(request, "hello.html", {"today" : today})

Je sais qu'elle est référencée par le mauvais chemin. Mais pourquoi est-il défini sur le répertoire anaconda? J'espère que je dois modifier certains paramètres? que sont-ils?


0 commentaires

3 Réponses :


1
votes

Vous devriez conserver les modèles html sur un chemin comme celui-ci: nom_projet / templates / nom_app /


0 commentaires

0
votes

modifiez vos paramètres.py et définissez la destination de votre dossier de modèles et placez votre hello.html dans ce dossier

# Template directory setting
TEMPLATE_DIRS = (
    os.path.join(os.path.dirname(__file__), 'templates'),
)

référence: https://docs.djangoproject.com/en/2.1/topics/templates/

.


0 commentaires

0
votes

Vous devez placer le répertoire myapp dans un dossier nommé templates au niveau du répertoire de votre projet (voir l'image ci-dessous).

Structure du répertoire du projet Django

Il s'agit de la structure de projet Django par défaut. Vous pouvez modifier les chemins de répertoire par défaut en modifiant settings.py


0 commentaires