yxy添加 build_search_words.py 注释

yxy_branch
严欣怡 4 months ago
parent 6ffc8efab6
commit 3152a41bd2

@ -1,13 +1,32 @@
# 导入Django命令基类用于创建自定义管理命令
from django.core.management.base import BaseCommand
# 导入博客应用中的标签和分类模型
from blog.models import Tag, Category
# TODO 参数化
# TODO: 后续可优化为支持参数化(如指定输出格式、过滤条件等)
class Command(BaseCommand):
"""
Django自定义管理命令生成搜索关键词列表
提取所有标签和分类的名称用于构建搜索提示词或关键词库
"""
# 命令的帮助信息执行python manage.py help build_search_words时显示
help = 'build search words'
def handle(self, *args, **options):
datas = set([t.name for t in Tag.objects.all()] +
[t.name for t in Category.objects.all()])
print('\n'.join(datas))
"""
命令核心执行逻辑
当运行python manage.py build_search_words时调用
"""
# 1. 提取所有标签Tag的名称并转换为列表
# 2. 提取所有分类Category的名称并转换为列表
# 3. 合并两个列表并通过set去重确保关键词唯一
datas = set(
[tag.name for tag in Tag.objects.all()] + # 标签名称列表
[category.name for category in Category.objects.all()] # 分类名称列表
)
# 将去重后的关键词按行打印输出
# 格式为每个关键词单独一行,便于后续处理(如写入文件或导入搜索提示库)
print('\n'.join(datas))
Loading…
Cancel
Save