You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
2 weeks ago | |
|---|---|---|
| .. | ||
| migrations | 2 weeks ago | |
| tests | 3 weeks ago | |
| {{ project_slug }} | 3 weeks ago | |
| .gitignore | 3 weeks ago | |
| README.md.jinja | 2 weeks ago | |
| app.py.jinja | 2 weeks ago | |
| config.py.jinja | 2 weeks ago | |
| copier.yml | 2 weeks ago | |
| pyproject.toml.jinja | 2 weeks ago | |
README.md.jinja
# {{ project_name }}
这是由 iTi-Flask Copier 模板生成的业务后端项目。
业务代码只扩展框架。
不要复制、覆盖或修改框架内部实现。
## 初始化
```bash
uv sync --extra dev
uv run python -m flask --app app.py db upgrade
```
## 开发
```bash
uv run python -m flask --app app.py run --debug
uv run --extra dev pytest
```
## 数据库迁移
生成 migration:
```bash
uv run python -m flask --app app.py db migrate -m "alice add example table"
```
升级数据库:
```bash
uv run python -m flask --app app.py db upgrade
```
规则:
- `migrations/versions` 必须提交。
- migration message 第一个词写作者名,后面自由描述。
- 生产只从 `main` 执行 `flask db upgrade`。
- 框架底座不提供系统业务 migration。
## 系统业务
{% if include_system %}
本项目已引入 `iti-system`。
系统能力全量引入,不拆分 migration。
同步系统 migration:
```bash
uv run python -m flask --app app.py iti-system migrations sync
uv run python -m flask --app app.py db upgrade
```
写入系统 seed:
```bash
uv run python -m flask --app app.py iti-system seed system
```
{% else %}
本项目未引入 `iti-system`。
因此没有认证、用户、角色、菜单、部门、字典、配置、文件、日志等系统能力。
后续需要系统能力时,增加 `iti-system` 依赖,并在 `app.py` 注册:
```python
from iti_system import create_system_module
modules=[
ExampleModule(),
create_system_module(),
]
```
{% endif %}