57 lines
3.3 KiB
Markdown
57 lines
3.3 KiB
Markdown
---
|
||
title: "TikTok PM - Python Django 项目"
|
||
type: source
|
||
tags: [django, python, tiktok, mysql, mariadb, docker, bright-data]
|
||
date: 2025-11-24
|
||
---
|
||
|
||
## Source File
|
||
- [[raw/Others/TikTok PM - Python Django Project.md]]
|
||
|
||
## Summary(用中文描述)
|
||
- 核心主题:TikTok Shop 产品数据管理系统的完整 Django Web 应用开发教程
|
||
- 问题域:电商产品数据抓取、存储、管理与可视化分析
|
||
- 方法/机制:Django ORM + MySQL + Django REST Framework + Docker 容器化部署 + Bright Data API 异步数据抓取
|
||
- 结论/价值:提供从零构建 TikTok 电商产品管理系统的完整技术方案,含 Admin 后台、API 接口、Docker 生产部署、异步任务队列
|
||
|
||
## Key Claims(用中文描述)
|
||
- Django Admin 可通过富文本编辑器(django-tinymce)、自定义视图、内联关联模型实现复杂产品管理界面
|
||
- Django REST Framework + django-filter 可快速构建支持快速搜索和多条件过滤的 RESTful API,供 n8n 等自动化工具调用
|
||
- Docker + Gunicorn + Nginx 容器化部署方案可实现零停机版本更新和快速回滚
|
||
- Django-Q 异步任务队列可处理 Bright Data 异步 API 调用,实现不阻塞 Web 请求的产品数据抓取与导入
|
||
- 自定义 Management Command 可将 JSON 文件批量导入逻辑封装为 `python manage.py import_json_data` 命令
|
||
|
||
## Key Quotes
|
||
> "无论修改字段类型、添加新字段,还是像您这样修改字段约束(例如从非空改为可空 null=True),都必须遵循这两步流程:makemigrations + migrate" — Django 数据库迁移最佳实践
|
||
|
||
> "原子性部署:docker compose up --build -d 确保了所有依赖项和配置都会在新镜像中构建好,如果构建失败,旧服务不会受到影响" — Docker 生产部署最佳实践
|
||
|
||
## Key Concepts
|
||
- [[Django ORM]]:通过 Python 类定义数据库表结构,Django 自动生成 SQL 并管理迁移
|
||
- [[Django REST Framework]]:构建 RESTful API 的 Django 第三方框架,支持序列化器、视图集、过滤和搜索
|
||
- [[Docker 容器化部署]]:使用 Dockerfile + docker-compose.yml 实现应用容器化,结合 Gunicorn + Nginx 进行生产部署
|
||
- [[Django Admin 定制]]:通过 fieldsets、inlines、readonly_fields、list_display 等实现复杂管理界面
|
||
- [[Django-Q 异步任务]]:Django 异步任务队列,用于处理耗时的外部 API 调用
|
||
- [[Bright Data API]]:第三方数据抓取服务,支持异步请求模式,适合大规模产品数据采集
|
||
- [[MySQL/MariaDB 数据库]]:项目使用 MySQL/MariaDB 作为后端数据库,存储 TikTok 产品数据
|
||
|
||
## Key Entities
|
||
- [[TikTok Shop]]:电商平台,数据来源
|
||
- [[Django]]:Python Web 框架
|
||
- [[Bright Data]]:第三方数据抓取 API 提供商
|
||
- [[MySQL / MariaDB]]:关系型数据库
|
||
- [[Docker]]:容器化平台
|
||
- [[Gunicorn]]:Python WSGI HTTP 服务器
|
||
- [[Nginx]]:反向代理和静态文件服务
|
||
- [[n8n]]:自动化工作流工具(通过 REST API 集成)
|
||
|
||
## Connections
|
||
- [[Django REST Framework]] ← builds_on ← [[Django ORM]]
|
||
- [[Docker 容器化部署]] ← extends ← [[Gunicorn]] + [[Nginx]]
|
||
- [[Django-Q 异步任务]] ← used_by ← [[Bright Data API]]
|
||
- [[MySQL / MariaDB]] ← stores ← TikTok 产品数据
|
||
|
||
## Contradictions
|
||
- 暂无发现与其他 Wiki 页面的冲突
|
||
|