2010-11-02 4 views
1

Je suis sur le tutoriel this, après avoir ajouté les modèles et mis le modèle dans urls.py, je vais sur le site Web, je reçois un modèle de page non chargé.Django Template Issue

C'est ma section dirs de modèle de settings.py:

TEMPLATE_DIRS = (
    "/home/django-projects/base/templates/", 
) 

la hiérarchie des dossiers de base est la suivante:

blog<dir> 
dbs<dir> 
__init__.py 
manage.py 
settings.py 
templates<dir> 
urls.py 

urls.py ressemble à ceci:

from django.conf.urls.defaults import * 

# Uncomment the next two lines to enable the admin: 
from django.contrib import admin 
admin.autodiscover() 

urlpatterns = patterns('base.blog.views', 
    (r"", "main"), 
    # Example: 
    # (r'^base/', include('base.foo.urls')), 

    # Uncomment the admin/doc line below to enable admin documentation: 
    # (r'^admin/doc/', include('django.contrib.admindocs.urls')), 

    # Uncomment the next line to enable the admin: 
    (r'^admin/', include(admin.site.urls)), 
) 

Dans les modèles, j'ai un dossier appelé blog, et il contient les deux fichiers html du tutoriel. Je ne suis pas sûr du réglage qui me manque pour afficher les bons modèles. Je serai heureux de poster tout ce que vous auriez besoin de voir. Je suis sûr que c'est quelque chose de trivial, je n'arrive pas à comprendre ce que c'est. Merci de votre aide.

EDIT Donc, je jouais avec, et je me suis rendu compte que je ne pouvais pas accéder à l'administration. J'ai donc découplé les URL pour la partie blog de la partie principale. Le urls.py au niveau supérieur ressemble à ceci:

from django.conf.urls.defaults import * 

# Uncomment the next two lines to enable the admin: 
from django.contrib import admin 
admin.autodiscover() 

urlpatterns = patterns('', 
    (r'blog/', include('blog.urls')), 
    # Example: 
    # (r'^base/', include('base.foo.urls')), 

    # Uncomment the admin/doc line below to enable admin documentation: 
    # (r'^admin/doc/', include('django.contrib.admindocs.urls')), 

    # Uncomment the next line to enable the admin: 
    (r'^admin/', include(admin.site.urls)), 
) 

Et dans le dossier blog urls.py ressemble à ceci: de django.conf.urls.defaults import *

urlpatterns = patterns('base.blog.views', 
    (r'^$', 'main'), 
) 

maintenant Je peux accéder à l'administration, mais je reçois toujours une erreur de chargement de modèle lorsque j'essaie d'accéder au blog.

TemplateDoesNotExist at /blog/ 
blog/list.html 
Request Method: GET 
Request URL: http://192.168.1.124:9999/blog/ 
Django Version: 1.2.3 
Exception Type: TemplateDoesNotExist 
Exception Value:  
blog/list.html 
Exception Location: /usr/local/lib/python2.6/dist-packages/Django-1.2.3-py2.6.egg/django/template/loader.py in find_template, line 138 
Python Executable: /usr/bin/python 
Python Version: 2.6.6 
Python Path: ['/home/kevin/django-projects/base', '/usr/local/lib/python2.6/dist-packages/setuptools-0.6c11-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/BeautifulSoup-3.1.0.1-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/Django-1.2.3-py2.6.egg', '/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk', '/usr/lib/python2.6/lib-old', '/usr/lib/python2.6/lib-dynload', '/usr/local/lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages/PIL', '/usr/lib/python2.6/dist-packages/gst-0.10', '/usr/lib/pymodules/python2.6', '/usr/lib/python2.6/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.6/gtk-2.0'] 
Server time: Tue, 2 Nov 2010 11:59:13 -0500 

Template-loader postmortem 

Django tried loading these templates, in this order: 
Using loader django.template.loaders.filesystem.Loader: 
Using loader django.template.loaders.app_directories.Loader: 
+0

Pouvons-nous avoir plus d'informations sur ce qui échoue? Je suppose que vous avez le Débogage = Vrai afin que vous puissiez probablement nous donner plus de détails sur l'erreur. –

+0

fin de la trace: Type d'exception: TemplateDoesNotExist à /bbase.html Exception Value: list.html – Kevin

Répondre

2

Si la dernière ligne de la « principale », contiennent des « blog/list.html » au lieu de « liste. html "?

Essayez de remplacer cette ligne qui suit:

return render_to_response("blog/list.html", dict(posts=posts, user=request.user)) 

Faites la même chose avec la vue « post ». En fait, Django va regarder sous chacun des répertoires de modèles configurés dans settings.py et si vous spécifiez "list.html" il vaut mieux être dans la racine de ces répertoires. Puisque vous avez mis le "list.html" dans le sous-répertoire "blog" et non là où vous l'aviez dit, Django ne peut pas le trouver.

+0

Je l'ai fait, et cela a beaucoup de sens, mais je reçois toujours le TemplateDoesNotExist à/error avec à la fois blog/list.html et/blog/list .html – Kevin

+0

Vous devrez également remplacer le chemin de la balise 'extends' par 'blog/bbase.html'. –

+0

Toujours obtenir l'erreur – Kevin

0

D'abord, vous avez un manque de premier plan/dans votre répertoire de modèle:

TEMPLATE_DIRS = (
    "/home/django-projects/base/templates/", 
) 
+0

C'était une faute de frappe, il existe réellement – Kevin

+0

pouvez-vous s'il vous plaît modifier votre poste alors? Merci –

+1

était en train de faire cela, tout est fait maintenant – Kevin

Questions connexes