- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试发布测验,但出现完整性错误。
所有者字段不为空,而不是当前用户
序列化器.py
class QuizSerializer(serializers.ModelSerializer):
owner = serializers.PrimaryKeyRelatedField(read_only=True, default=serializers.CurrentUserDefault()
)
quiz_id = serializers.CharField(read_only=True, default='q'+secrets.token_hex(8))
class Meta:
model = Quiz
fields = ['quiz_id', 'owner', 'title', 'description']
模型.py
class Quiz(models.Model):
quiz_id = models.CharField(max_length=50,primary_key=True,null=False)
owner = models.ForeignKey(User, on_delete=models.CASCADE,null=False)
title = models.CharField(max_length=50,null=False)
description = models.TextField(max_length=200,blank=True)
timestamp = models.DateTimeField(default=timezone.now)
is_live = models.BooleanField(default=False)
View .py
最佳答案
使用HiddenField
而不是read_only=True
,请参阅:https://www.django-rest-framework.org/api-guide/validators/#currentuserdefault但这将使用户不会出现在 GET 响应中,输入中的 read_only
字段将被忽略,请参阅 https://www.django-rest-framework.org/api-guide/fields/#read_only尝试:
class QuizSerializer(serializers.ModelSerializer):
owner = serializers.PrimaryKeyRelatedField(read_only=True)
quiz_id = serializers.CharField(read_only=True)
def save(**kwargs):
kwargs['owner'] = self.context['request'].user
kwargs['quiz_id'] = 'q'+secrets.token_hex(8) # <-- you can have this as a default in model
super().save(**kwargs)
class Meta:
model = Quiz
fields = ['quiz_id', 'owner', 'title', 'description']
关于python - IntegrityError at/quiz/api/quiz/null 列 "owner_id"中的值违反了非空约束详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58437572/
我正在与数据库中的表建立关系。目前我有一个有 3 张 table 的辅导课。例如(auth_user 表、partyEvent 表、friends 表)。 现在用户应该只能创建一个 partyEven
我在 SeaORM、Rust 和 Postgres 方面遇到了错误,我是数据库领域的新手,如果这是一个新手问题,那么很抱歉。我想使用 sea-orm-cli 刷新迁移,但收到此错误执行错误:从数据库返
我正在尝试制作一个允许用户上传文件(纯文本字典文件)的表单。这是我的模型: from django.conf import settings from django.db import models
我需要一些帮助来查询多个表。 我的数据库:我有以下表格: 1. users (user_id, user_name, ..) //user_name is unique. 2. guestbook_c
我正在尝试使用 CreateView 跟踪创建对象的用户,并且我的操作与文档( https://docs.djangoproject.com/en/dev/topics/class-based-vie
我正在尝试发布测验,但出现完整性错误。 所有者字段不为空,而不是当前用户 序列化器.py class QuizSerializer(serializers.ModelSerializer):
我是一名优秀的程序员,十分优秀!