Django: Impossible de charger le template tags

Je suis en utilisant Django 1.2.1 et je vais avoir des problèmes en essayant de charger mon
modèle tags:

{% load mytags %}

TemplateSyntaxError at /myapp/

'mytags' is not a valid tag library: Template library mytags not
found, tried django.templatetags.mytags

Il est défini dans myproject/myapp/templatetags/mytags.py.

nate@nate-desktop:~/work/django-projects/myproject$ ls myapp/templatetags/
mytags.py  __init.py__
nate@nate-desktop:~/work/django-projects/myproject$ more
myapp/templatetags/mytags.py


from django import template

register = template.Library()

@register.simple_tag
def myclass(request):
    return request.path

J'ai ajouté 'myapp' à INSTALLED_APPS, et mis à jour TEMPLATE_LOADERS (comme
par une suggestion de StackOverflow):

TEMPLATE_LOADERS = (
   'django.template.loaders.filesystem.Loader',
   'django.template.loaders.app_directories.Loader',
   'django.template.loaders.eggs.Loader',
   'django.template.loaders.app_directories.load_template_source',
)

Quand je lance le serveur, je vois ce message d'avertissement:

/usr/local/lib/python2.6/dist-packages/django/template/loaders/eggs.py:4:
UserWarning: Module _mysql was already imported from
/usr/lib/pymodules/python2.6/_mysql.so, but
/usr/lib/pymodules/python2.6 is being added to sys.path

Lorsque j'essaie d'importer mon module dans le shell moi aussi, je suis incapable de les importer:

>>> from django.templatetags import mytags
Traceback (most recent call last):
 File "<console>", line 1, in <module>
ImportError: cannot import name mytags
>>> from myapp.templatetags import mytags
Traceback (most recent call last):
 File "<console>", line 1, in <module>
ImportError: No module named templatetags

Est-ce à dire quelque chose de mal avec mon chemin ou de configuration? Des idées?

  • Avez-vous aussi un __init__.py dans le myapp répertoire?
  • Bonne question. Oui, je fais: nate@nate-desktop:~/work/django-projets/myproject$ ls myapp/ init.py models.py templatetags views.py init.pyc modèles.pyc tests.py les vues.pyc
  • J'ai de la difficulté à entrer dans la sortie de 'ls'. Les traits de soulignement est converti dans le texte en caractères gras. Elle doit montrer le double trait de soulignement init.py double trait de soulignement.
InformationsquelleAutor Nate Reed | 2010-12-20