fix: make desc field optional in KnowledgeFolder and ToolFolder models

This commit is contained in:
CaptainB 2025-05-14 11:21:00 +08:00
parent 6b41d8cff1
commit 25da46d13f
9 changed files with 75 additions and 9 deletions

View File

View File

@ -3,13 +3,22 @@ from rest_framework import serializers
class FolderCreateRequest(serializers.Serializer):
name = serializers.CharField(required=True, label=_('folder name'))
name = serializers.CharField(required=True, max_length=64, label=_('folder name'))
desc = serializers.CharField(
required=False, max_length=200, allow_null=True, allow_blank=True, label=_('folder description')
)
parent_id = serializers.CharField(required=False, allow_null=True, allow_blank=True, default='root',
label=_('parent id'))
parent_id = serializers.CharField(
required=False, allow_null=True, allow_blank=True, default='root', label=_('parent id')
)
class FolderEditRequest(serializers.Serializer):
name = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_('folder name'))
parent_id = serializers.CharField(required=False, allow_null=True, allow_blank=True, default='root',
label=_('parent id'))
desc = serializers.CharField(
required=False, max_length=200, allow_null=True, allow_blank=True, label=_('folder description')
)
parent_id = serializers.CharField(
required=False, allow_null=True, allow_blank=True, default='root', label=_('parent id')
)

View File

@ -32,6 +32,7 @@ def get_folder_type(source):
elif source == Group.APPLICATION.name:
# todo app folder
return None
# return ApplicationFolder
elif source == Group.KNOWLEDGE.name:
return KnowledgeFolder
else:
@ -44,6 +45,7 @@ def get_folder_tree_serializer(source):
elif source == Group.APPLICATION.name:
# todo app folder
return None
# return ApplicationFolderTreeSerializer
elif source == Group.KNOWLEDGE.name:
return KnowledgeFolderTreeSerializer
else:

View File

@ -0,0 +1,35 @@
# Generated by Django 5.2.1 on 2025-05-14 03:27
import django.db.models.deletion
import knowledge.models.knowledge
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('knowledge', '0005_remove_file_workspace_id_file_file_size_and_more'),
]
operations = [
migrations.AddField(
model_name='knowledgefolder',
name='desc',
field=models.CharField(blank=True, max_length=200, null=True, verbose_name='描述'),
),
migrations.AlterField(
model_name='applicationknowledgemapping',
name='knowledge',
field=models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, to='knowledge.knowledge'),
),
migrations.AlterField(
model_name='document',
name='status',
field=models.CharField(default=knowledge.models.knowledge.Status.__str__, max_length=20, verbose_name='状态'),
),
migrations.AlterField(
model_name='paragraph',
name='status',
field=models.CharField(default=knowledge.models.knowledge.Status.__str__, max_length=20, verbose_name='状态'),
),
]

View File

@ -103,6 +103,7 @@ def default_model():
class KnowledgeFolder(MPTTModel, AppModelMixin):
id = models.CharField(primary_key=True, max_length=64, editable=False, verbose_name="主键id")
name = models.CharField(max_length=64, verbose_name="文件夹名称")
desc = models.CharField(max_length=200, null=True, blank=True, verbose_name="描述")
user = models.ForeignKey(User, on_delete=models.DO_NOTHING, verbose_name="用户id")
workspace_id = models.CharField(max_length=64, verbose_name="工作空间id", default="default", db_index=True)
parent = TreeForeignKey('self', on_delete=models.DO_NOTHING, null=True, blank=True, related_name='children')

View File

@ -8,7 +8,7 @@ class KnowledgeFolderTreeSerializer(serializers.ModelSerializer):
class Meta:
model = KnowledgeFolder
fields = ['id', 'name', 'user_id', 'workspace_id', 'parent_id', 'children']
fields = ['id', 'name', 'desc', 'user_id', 'workspace_id', 'parent_id', 'children']
def get_children(self, obj):
return KnowledgeFolderTreeSerializer(obj.get_children(), many=True).data
@ -19,4 +19,4 @@ class KnowledgeFolderFlatSerializer(serializers.ModelSerializer):
class Meta:
model = KnowledgeFolder
fields = ['id', 'name', 'user_id', 'workspace_id', 'parent_id']
fields = ['id', 'name', 'desc', 'user_id', 'workspace_id', 'parent_id']

View File

@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-05-14 03:27
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('tools', '0001_initial'),
]
operations = [
migrations.AddField(
model_name='toolfolder',
name='desc',
field=models.CharField(blank=True, max_length=200, null=True, verbose_name='描述'),
),
]

View File

@ -10,6 +10,7 @@ from users.models import User
class ToolFolder(MPTTModel, AppModelMixin):
id = models.CharField(primary_key=True, max_length=64, editable=False, verbose_name="主键id")
name = models.CharField(max_length=64, verbose_name="文件夹名称")
desc = models.CharField(max_length=200, null=True, blank=True, verbose_name="描述")
user = models.ForeignKey(User, on_delete=models.DO_NOTHING, verbose_name="用户id")
workspace_id = models.CharField(max_length=64, verbose_name="工作空间id", default="default", db_index=True)
parent = TreeForeignKey('self', on_delete=models.DO_NOTHING, null=True, blank=True, related_name='children')

View File

@ -10,7 +10,7 @@ class ToolFolderTreeSerializer(serializers.ModelSerializer):
class Meta:
model = ToolFolder
fields = ['id', 'name', 'user_id', 'workspace_id', 'parent_id', 'children']
fields = ['id', 'name', 'desc', 'user_id', 'workspace_id', 'parent_id', 'children']
def get_children(self, obj):
return ToolFolderTreeSerializer(obj.get_children(), many=True).data
@ -21,4 +21,4 @@ class ToolFolderFlatSerializer(serializers.ModelSerializer):
class Meta:
model = ToolFolder
fields = ['id', 'name', 'user_id', 'workspace_id', 'parent_id']
fields = ['id', 'name', 'desc', 'user_id', 'workspace_id', 'parent_id']