flask中Ant Design Pro如何使用,请给一个demo
时间: 2024-10-21 19:17:22 浏览: 16
cesium+vue2+ant-design-vue+flask脚手架
在 Flask 中集成 Ant Design Pro,你需要先安装相关的依赖,包括 Flask、Flask-WTF、以及 Ant Design 的前端组件和 Axios 用于处理 HTTP 请求。以下是一个简单的 Flask 应用使用 Ant Design Pro 的 demo:
首先,确保你的 Python 环境已经安装了 Flask、Flask-WTF 和 antd(Ant Design Pro):
```bash
pip install Flask Flask-WTF axios
```
然后,设置一个基本的 Flask 应用:
```python
from flask import Flask, render_template
from flask_wtf import FlaskForm
import requests
app = Flask(__name__)
app.config['SECRET_KEY'] = 'your_secret_key'
# 假设我们有一个 API 接口获取数据
def get_data():
return requests.get('http://your-api-url.com/data')
class DataForm(FlaskForm):
# 添加表单字段...
@app.route('/')
def home():
form = DataForm()
data = get_data() # 获取你的数据
return render_template('home.html', form=form, data=data)
if __name__ == '__main__':
app.run(debug=True)
```
在 `home.html` 文件中,你可以使用 Ant Design Pro 的 Table 组件展示数据并实现 CRUD 功能:
```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<script src="https://unpkg.com/antd@4.0.0/dist/antd.min.js"></script>
</head>
<body>
<form id="data-form" {{ form.csrf_token }}>
<!-- 表单内容... -->
<button type="submit">提交</button>
</form>
<div id="data-table-container">
<table>
<!-- 使用 antd 的 Table 组件,动态渲染数据 -->
<thead>
<tr>
<!-- 定义列头... -->
</tr>
</thead>
<tbody>
{% for item in data %}
<tr>
<!-- 渲染每一行数据... -->
</tr>
{% endfor %}
</tbody>
</table>
</div>
<script>
const form = document.getElementById('data-form');
form.addEventListener('submit', async (e) => {
e.preventDefault();
// 提交表单到服务器...
await axios.post('/submit', form);
});
</script>
</body>
</html>
```
注意这只是一个基础示例,实际应用中可能需要根据业务需求添加更多功能和错误处理。同时,你需要替换掉 `get_data()` 函数以及相关 URL,使其指向你的实际数据源。
阅读全文