Python 未解析引用';型号';
我正在编写自定义模板标记,出现错误“未解析的引用‘模型’” 以下是我的blog_tags.pyPython 未解析引用';型号';,python,django,Python,Django,我正在编写自定义模板标记,出现错误“未解析的引用‘模型’” 以下是我的blog_tags.py from django import template from .models import Post register = template.Library() @register.simple_tag def total_posts(): return Post.published.count() 我的目录树如下 blog/ __init__.py models.py
from django import template
from .models import Post
register = template.Library()
@register.simple_tag
def total_posts():
return Post.published.count()
我的目录树如下
blog/
__init__.py
models.py
...
templatetags/
__init__.py
blog_tags.py
在我的模特身上,我有一门博士后课程
当我点击pycharm的提示“InstallPackagePost”时,安装完成后,错误消失了。
我想知道,每次我想在模型中编写一个随类演化的自定义标记时,我是否也必须这样做,即通过IDE安装包?如果我正确解释了您的项目结构,那么您的
模型模块位于相对于blog\u标记的父包中。访问.models
将尝试在模板标签
包中查找模块
请尝试将您的导入更改为:
from ..models import Post
如果我正确解释了您的项目结构,则您的模型
模块位于相对于blog\u标记
的父包中。访问.models
将尝试在模板标签
包中查找模块
请尝试将您的导入更改为:
from ..models import Post
使用app
名称空间而不是相对导入导入导入模型,以便维护标准结构
from django import template
# blog is your app name
from blog.models import Post
register = template.Library()
@register.simple_tag
def total_posts():
return Post.published.count()
请检查django项目中与pycharm相关的未解决错误问题使用app
名称空间而不是相对导入导入导入您的模型,以便维护标准结构
from django import template
# blog is your app name
from blog.models import Post
register = template.Library()
@register.simple_tag
def total_posts():
return Post.published.count()
请检查与Django项目中的PyGror有关的未解决的错误问题
,因为这是Django,如Django循环导入可能是一个问题,请考虑动态加载模型:
对于django 1.7+,请使用:
对于早期版本:
from django.db.models.loading import get_model
Post = get_model('blog', 'Post')
<强>注:只在“blog”是安装的应用程序时工作。
< P>这是Django,如Django循环导入可能是一个问题,考虑动态加载模型:
对于django 1.7+,请使用:
对于早期版本:
from django.db.models.loading import get_model
Post = get_model('blog', 'Post')
注意:这仅在“blog”是已安装的应用程序时有效。如果要进行相对导入,请尝试以下操作:从blog.models导入Post
从..models导入Post
表示来自同一文件夹,因此它在templatetags
中查找,其中没有models.py
@nik_m我尝试了blog.models,但它不起作用,但是..modelsworked@jojo谢谢你,模型成功了,我从中学到了很多!尝试以下操作:from blog.models import Post
from..models import Post
如果要进行相对导入
表示来自同一文件夹,因此它在templatetags
中查找,其中没有models.py
@nik_m我尝试了blog.models,但它不起作用,但是..modelsworked@jojo谢谢你,模型成功了,我从中学到了很多!很抱歉,什么是循环导入?很抱歉,什么是循环导入?我已尝试使用blog.models,但它不起作用。还有..models workedi support@jojo的答案我已经尝试过blog.models了,但它不起作用。还有..模型workedi支持@jojo的答案