add top for announcement
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
# Generated by Django 5.0.6 on 2024-06-23 11:57
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("announcement", "0004_announcement_tag"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name="announcement",
|
||||
options={"ordering": ("-top", "-create_time")},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="announcement",
|
||||
name="top",
|
||||
field=models.BooleanField(default=False),
|
||||
),
|
||||
]
|
||||
@@ -13,7 +13,8 @@ class Announcement(models.Model):
|
||||
created_by = models.ForeignKey(User, on_delete=models.CASCADE)
|
||||
last_update_time = models.DateTimeField(auto_now=True)
|
||||
visible = models.BooleanField(default=True)
|
||||
top = models.BooleanField(default=False)
|
||||
|
||||
class Meta:
|
||||
db_table = "announcement"
|
||||
ordering = ("-create_time",)
|
||||
ordering = ("-top", "-create_time",)
|
||||
|
||||
@@ -9,6 +9,7 @@ class CreateAnnouncementSerializer(serializers.Serializer):
|
||||
tag = serializers.CharField()
|
||||
content = serializers.CharField(max_length=1024 * 1024 * 8)
|
||||
visible = serializers.BooleanField()
|
||||
top = serializers.BooleanField()
|
||||
|
||||
|
||||
class AnnouncementSerializer(serializers.ModelSerializer):
|
||||
@@ -33,3 +34,4 @@ class EditAnnouncementSerializer(serializers.Serializer):
|
||||
tag = serializers.CharField()
|
||||
content = serializers.CharField(max_length=1024 * 1024 * 8)
|
||||
visible = serializers.BooleanField()
|
||||
top = serializers.BooleanField()
|
||||
|
||||
@@ -14,11 +14,7 @@ class AnnouncementAdminAPI(APIView):
|
||||
publish announcement
|
||||
"""
|
||||
data = request.data
|
||||
announcement = Announcement.objects.create(title=data["title"],
|
||||
content=data["content"],
|
||||
tag=data["tag"],
|
||||
created_by=request.user,
|
||||
visible=data["visible"])
|
||||
announcement = Announcement.objects.create(**data, created_by=request.user)
|
||||
return self.success(AnnouncementSerializer(announcement).data)
|
||||
|
||||
@validate_serializer(EditAnnouncementSerializer)
|
||||
|
||||
Reference in New Issue
Block a user