mysql - 如果从另一个模型创建新对象,Django 在模型上添加新字段

标签 mysql django django-models django-mysql

我有两个模型:

class Exam(models.Model):
    name = models.CharField(max_length=100,default="test")
    user = models.ForeignKey(User)

class UserScore(models.Model):
    user = models.OneToOneField(User,primary_key=True,on_delete=models.CASCADE)
    resultat = models.IntegerField(default=0)

当我创建动态创建的新考试时,我希望在我的用户分数模型上为所有用户创建一个新字段。

最佳答案

你可以使用 Django 信号来实现这一点 例如。

from django.db.models.signals import post_save
def create_userscore(sender, instance, **kwargs):
    if created:
        UserScore.objects.create()
post_save.connect(create_userscore(), sender=Exam)

这将在每次创建 Exam 对象时创建一个 UserScore 对象

关于mysql - 如果从另一个模型创建新对象,Django 在模型上添加新字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51134563/

相关文章:

django.request : Forbidden (Referer checking failed - no Referer. )

django - 'ManyToManyField' 对象没有属性 'm2m_reverse_field_name'

sql - 描述 IT 环境的数据库模型

django - 无法在 Django 中捕获 Celery 操作错误

django - 按交替值排序查询集

php - 如何编写未序列化类别的查询

php - 为什么我无法向 MySQL 插入数据?

mysql - 我试图了解如何使用 TFDStoredProc(FireDac 组件)填充 TIWDBGrid(IntraWeb 组件)

php - 使用 update_batch 增加数据库中的字段 自动添加单引号

sql-server - Django <-> SQL Server 2005,文本编码问题