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)
|
created_by = models.ForeignKey(User, on_delete=models.CASCADE)
|
||||||
last_update_time = models.DateTimeField(auto_now=True)
|
last_update_time = models.DateTimeField(auto_now=True)
|
||||||
visible = models.BooleanField(default=True)
|
visible = models.BooleanField(default=True)
|
||||||
|
top = models.BooleanField(default=False)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
db_table = "announcement"
|
db_table = "announcement"
|
||||||
ordering = ("-create_time",)
|
ordering = ("-top", "-create_time",)
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ class CreateAnnouncementSerializer(serializers.Serializer):
|
|||||||
tag = serializers.CharField()
|
tag = serializers.CharField()
|
||||||
content = serializers.CharField(max_length=1024 * 1024 * 8)
|
content = serializers.CharField(max_length=1024 * 1024 * 8)
|
||||||
visible = serializers.BooleanField()
|
visible = serializers.BooleanField()
|
||||||
|
top = serializers.BooleanField()
|
||||||
|
|
||||||
|
|
||||||
class AnnouncementSerializer(serializers.ModelSerializer):
|
class AnnouncementSerializer(serializers.ModelSerializer):
|
||||||
@@ -33,3 +34,4 @@ class EditAnnouncementSerializer(serializers.Serializer):
|
|||||||
tag = serializers.CharField()
|
tag = serializers.CharField()
|
||||||
content = serializers.CharField(max_length=1024 * 1024 * 8)
|
content = serializers.CharField(max_length=1024 * 1024 * 8)
|
||||||
visible = serializers.BooleanField()
|
visible = serializers.BooleanField()
|
||||||
|
top = serializers.BooleanField()
|
||||||
|
|||||||
@@ -14,11 +14,7 @@ class AnnouncementAdminAPI(APIView):
|
|||||||
publish announcement
|
publish announcement
|
||||||
"""
|
"""
|
||||||
data = request.data
|
data = request.data
|
||||||
announcement = Announcement.objects.create(title=data["title"],
|
announcement = Announcement.objects.create(**data, created_by=request.user)
|
||||||
content=data["content"],
|
|
||||||
tag=data["tag"],
|
|
||||||
created_by=request.user,
|
|
||||||
visible=data["visible"])
|
|
||||||
return self.success(AnnouncementSerializer(announcement).data)
|
return self.success(AnnouncementSerializer(announcement).data)
|
||||||
|
|
||||||
@validate_serializer(EditAnnouncementSerializer)
|
@validate_serializer(EditAnnouncementSerializer)
|
||||||
|
|||||||
Reference in New Issue
Block a user