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

基于Django的类X(Twitter)社交讨论站点:用户模型定义位置咨询

Django中用户模型的定义位置

用户模型(包括你需要的用户评分这类自定义字段)必须在models.py文件中定义,原因如下:

  • models.py是Django ORM(对象关系映射)的核心文件,所有需要持久化存储到数据库的数据模型都在这里定义。用户数据(账号信息、评分等)需要长期保存,对应数据库中的用户表,模型就是这个表的代码层面映射。
  • forms.py的作用是处理表单的验证、数据清洗和前端渲染,比如用户注册表单、登录表单,它依赖于models中定义的用户模型,而非用来定义用户本身。
  • views.py负责处理HTTP请求、业务逻辑和响应返回,比如处理用户登录请求、查询用户评分,它是调用models中的用户模型来操作数据,不是定义模型的地方。

举个自定义用户模型的简单示例:

# models.py
from django.contrib.auth.models import AbstractUser
from django.db import models

class CustomUser(AbstractUser):
    user_rating = models.FloatField(default=0.0)  # 新增用户评分字段
    # 可添加其他自定义字段,比如头像、签名等

如果需要扩展Django默认的用户功能,推荐继承AbstractUser,这样既能保留Django自带的认证、权限等功能,又能灵活添加自定义字段。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.01 19:44:50