dissdoc
Фев. 4, 2011 13:56:09
Есть проект. Есть пара приложений (apps) для этого проекта. Пишу тег, который из каждого приложения берет какой-то элемент/функцию и что-то с ней делает. Так вот. Ошибка выдается :(
'anytags' is not a valid tag library: ImportError raised loading widgets.templatetags.any: No module named views
Собственно делаю вот так
# widgets/templatetags/anytags.py
from app.views import *
@register.tag
def test_tag(parser, token):
pass
В settings.py widgets подключены… Уже не знаю на что грешить…
appetito
Фев. 4, 2011 14:39:21
на то, что модуля app.views нет в путях импорта…
dissdoc
Фев. 4, 2011 14:50:41
а он есть, в этом-то и проблема…
dissdoc
Фев. 4, 2011 16:27:04
просто удалил импорт… Все заработало..
Вопрос: не совсем понял, как работают тогда темплейттагс? откуда они начинают загружаться? какая у них область видимости других модулей?
EvgIq
Фев. 4, 2011 17:48:44
dissdoc
Все заработало потому что Вы импорт удалили, он был не правильный.
Он у Вас не использовался и был не нужен.
dissdoc
Фев. 4, 2011 19:33:06
Он нужен просто потому, что функции, какие он использует, находятся во views.py
Но я его удалил, а функции функционируют (прошу прощения за каламбур)
dissdoc
Фев. 4, 2011 22:48:51
Вопрос созрел. Вопрос состоит вот в чем. Что нужно сделать, чтобы подключать функции/модели одного приложения (app) другим! Одно приложение, грубо говоря, не видит другое. Почему? какие могут быть причины, если в settings.py они подключены, __init__.py тоже присутствует?
Antik
Фев. 6, 2011 02:54:21
Кривые импорты и ошибки в импортируемых файлах?
Теплейттеги шаряться между приложениями через
{% load имя_файла_c_темплейттегом %}