add tag for announcement

This commit is contained in:
yuetsh
2024-06-13 14:49:22 +08:00
parent 4a69c3b8f5
commit bef87ed554
9 changed files with 164 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
# Generated by Django 5.0.6 on 2024-06-13 06:09
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('announcement', '0003_auto_20180501_0436'),
]
operations = [
migrations.AddField(
model_name='announcement',
name='tag',
field=models.TextField(default=''),
preserve_default=False,
),
]

View File

@@ -8,6 +8,7 @@ class Announcement(models.Model):
title = models.TextField()
# HTML
content = RichTextField()
tag = models.TextField()
create_time = models.DateTimeField(auto_now_add=True)
created_by = models.ForeignKey(User, on_delete=models.CASCADE)
last_update_time = models.DateTimeField(auto_now=True)

View File

@@ -6,6 +6,7 @@ from .models import Announcement
class CreateAnnouncementSerializer(serializers.Serializer):
title = serializers.CharField(max_length=64)
tag = serializers.CharField()
content = serializers.CharField(max_length=1024 * 1024 * 8)
visible = serializers.BooleanField()
@@ -29,5 +30,6 @@ class AnnouncementListSerializer(serializers.ModelSerializer):
class EditAnnouncementSerializer(serializers.Serializer):
id = serializers.IntegerField()
title = serializers.CharField(max_length=64)
tag = serializers.CharField()
content = serializers.CharField(max_length=1024 * 1024 * 8)
visible = serializers.BooleanField()

View File

@@ -16,6 +16,7 @@ class AnnouncementAdminAPI(APIView):
data = request.data
announcement = Announcement.objects.create(title=data["title"],
content=data["content"],
tag=data["tag"],
created_by=request.user,
visible=data["visible"])
return self.success(AnnouncementSerializer(announcement).data)