python - Django 模型子类的类型提示
问题描述
我有 Django 视图的辅助函数,看起来像这样(下面的代码)。它返回 None 或与给定查询匹配的单个对象(例如pk=1
)。
from typing import Type, Optional
from django.db.models import Model
def get_or_none(cls: Type[Model], **kwargs) -> Optinal[Model]:
try:
return cls.objects.get(**kwargs)
except cls.DoesNotExist:
return None
假设我创建了自己的模型(例如Car
),并带有自己的字段(例如brand
,model
)。当我将get_or_none
函数的结果分配给变量,然后检索实例字段时,我在 PyCharm 中收到令人讨厌的未解析引用警告。
car1 = get_or_none(Car, pk=1)
if car1 is not None:
print(car1.brand) # <- Unresolved attribute reference 'brand' for class 'Model'
什么是提示摆脱此警告并获得变量代码完成的propper类型?
解决方案
推荐阅读
- java - 如何配置 Thorntail 2.5.0.Final 以使用来自 Keycloak 的 JWT 令牌授权用户?
- php - 我可以在 Jenkins 中使用用 Nette Tester 编写的测试吗
- java - @ComponentScan 未检测到 jlink 的 Java 运行时映像中的 bean
- javascript - 检查javascript中值的真实性的最简单方法是什么?
- python-3.x - AWS Lambda Python - 返回 BytesIO 文件?
- javascript - 如何识别什么键处理程序正在“吃”按键
- python - 如何修复烧瓶中的“预期令牌',',得到'无效'”eroor
- spyder - 如何在 Spyder 中对 Python3 代码进行键盘中断
- php - 如何在 docker 容器中启用 php 的 mysql 扩展?
- excel - 使用 Range.End 而不使用 .select