feat:exam 修改名称唯一主键
This commit is contained in:
parent
9aa0954e99
commit
5dc6208bb7
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 3.2.12 on 2024-12-18 10:02
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('exam', '0007_alter_question_year'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='paper',
|
||||||
|
name='name',
|
||||||
|
field=models.CharField(max_length=200, verbose_name='名称'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -57,7 +57,7 @@ class Paper(CommonAModel):
|
||||||
)
|
)
|
||||||
|
|
||||||
paper_types = models.CharField(default='押题', max_length=50, choices=cate_types, verbose_name='试卷类型')
|
paper_types = models.CharField(default='押题', max_length=50, choices=cate_types, verbose_name='试卷类型')
|
||||||
name = models.CharField(max_length=200, verbose_name='名称', unique=True)
|
name = models.CharField(max_length=200, verbose_name='名称')
|
||||||
questions = models.ManyToManyField(Question, through='PaperQuestion', null=True, blank=True)
|
questions = models.ManyToManyField(Question, through='PaperQuestion', null=True, blank=True)
|
||||||
limit = models.IntegerField(default=0, verbose_name='限时(分钟)')
|
limit = models.IntegerField(default=0, verbose_name='限时(分钟)')
|
||||||
total_score = models.FloatField(default=0, verbose_name='满分')
|
total_score = models.FloatField(default=0, verbose_name='满分')
|
||||||
|
|
|
@ -285,14 +285,7 @@ class PaperViewSet(ModelViewSet):
|
||||||
elif self.action in ['create', 'update']:
|
elif self.action in ['create', 'update']:
|
||||||
return PaperCreateUpdateSerializer
|
return PaperCreateUpdateSerializer
|
||||||
return super().get_serializer_class()
|
return super().get_serializer_class()
|
||||||
|
|
||||||
def destroy(self, request, *args, **kwargs):
|
|
||||||
"""
|
|
||||||
重写destroy方法实现真删除
|
|
||||||
"""
|
|
||||||
instance = self.get_object() # 获取要删除的对象
|
|
||||||
instance.delete() # 调用模型的 delete 方法,进行真删除
|
|
||||||
return Response({"detail": "删除成功"}, status=204)
|
|
||||||
|
|
||||||
def create(self, request, *args, **kwargs):
|
def create(self, request, *args, **kwargs):
|
||||||
sr = PaperCreateUpdateSerializer(data=request.data)
|
sr = PaperCreateUpdateSerializer(data=request.data)
|
||||||
|
|
Loading…
Reference in New Issue