[英]Unresolved attribute reference 'objects' for class 'Foo' in PyCharm
為什么我會看到作為models.Model 子類的類的這個警告(Foo 被定義為類Foo(models.Model))? 這是我使用 Foo.objects.filter(...) 的地方。
用一個簡化的例子回應更多細節的請求:
# ------ models.py ---------
from django.db import models
class Foo(models.Model):
pass
# ------ views.py ---------
from models import Foo
inquiry = Foo.objects.filter(...) # PyCharm gives warning for objects here
...
PyCharm 不會對任一文件中的導入語句發出警告。
你的pycharm版本是社區版還是專業版? 如果你的 pycharm 是社區的,也許它需要一個插件來支持 django。 如果您的 pycharm 是專業的,請確保在: Preferences > Languages&Frameworks > Django > Enable Django Support
中選擇了該選項。 這是圖像:
有一個更好的方法來解決這個問題
當您在 PyCharm 中啟用 Django 支持時,它會自動檢測到這是一個模型,並且對象是指模型管理器
相反,您可以在 models.py 本身中指定它,這是首選方法和最佳編碼方式
更新您的代碼,例如
class Foo(models.Model):
// column definitions
objects = models.Manager()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.