我正在爲可重用的django應用程序編寫自定義模板標籤。
我定義的標籤是在同一個應用程序中引用模型,所以我需要導入它。Django自定義模板標籤:包裝應用程序的ImportError
如果我將我的應用程序代碼複製到django項目中,但是如果我用distutils打包應用程序並通過pip或setup.py安裝(因此應用程序代碼被複制到站點包中),一切正常。不能使用它。
當試圖在模板標籤模塊中導入我的應用模型時,我得到一個ImportError。 代碼提高錯誤是這樣的:
從django的導入模板
進口cms_fragments.models寄存器= template.Library()
異常升高是這樣的:
ImportError raise loading cms_fragments.templatetags.cms_fragments_tags:沒有模塊名爲models
我敢肯定,我的應用程序佈局是正確的:
| -cms_fragments
| - _ 初始化 _的.py
| -models.py
| -templatetags| - _ 初始化 _的.py
| -cms_fragments_tags.py
| -views.py
我已經看到了與此相關的所有帖子,但我從來沒有發現有人報告了一個應用程序與django-project中的代碼與網站包中的代碼之間的區別。
任何提示?