You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django导入models后调用User类报NameError未定义问题求解

问题原因

你执行from myapp import models时,仅将myapp下的models模块导入到当前代码的命名空间中,models模块内部定义的User类并没有被直接暴露到当前作用域,因此直接调用User会触发未定义的名称报错。
而import myapp是将整个myapp包导入到当前命名空间,调用时使用myapp.models.User的完整路径,能顺着包结构逐层定位到User类,因此可以正常运行。

可用的解决方案
  • 方案一:保持现有导入逻辑,调用时加上models前缀
from myapp import models
models.User.objects.first()
  • 方案二:导入时直接将User类引入当前命名空间
from myapp.models import User
User.objects.first()

内容的提问来源于stack exchange,提问作者Tom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 17:36:02