Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mouday/flask-controller
a extension for flask which can auto register route rule
https://github.com/mouday/flask-controller
Last synced: 7 days ago
JSON representation
a extension for flask which can auto register route rule
- Host: GitHub
- URL: https://github.com/mouday/flask-controller
- Owner: mouday
- Created: 2021-04-16T12:54:08.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2021-04-16T13:21:27.000Z (over 3 years ago)
- Last Synced: 2024-09-23T07:32:10.064Z (10 days ago)
- Language: Python
- Size: 5.86 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# flask-controller
![PyPI](https://img.shields.io/pypi/v/flask-controller.svg)
![PyPI - Downloads](https://img.shields.io/pypi/dm/flask-controller)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/flask-controller)
![PyPI - License](https://img.shields.io/pypi/l/flask-controller)- Github: [https://github.com/mouday/flask-controller](https://github.com/mouday/flask-controller)
- Pypi: [https://pypi.org/project/flask-controller](https://pypi.org/project/flask-controller)## 简介
flask-controller 简化Flask开发,自动路由注册,以类的形式管理控制器
支持多层扫描
## 安装
```bash
pip install flask-controller
```## 使用示例
项目结构
```
.
└── flask_app
├── controllers
│ ├── __init__.py
│ ├── admin
│ │ ├── __init__.py
│ │ └── login_controller.py
│ ├── index_controller.py
│ └── user_controller.py
└── main.py```
文件内容
flask_app/controllers/index_controller.py
```python
# -*- coding: utf-8 -*-
from flask_controller import FlaskControllerclass IndexController(FlaskController):
def index(self):
return 'index'```
flask_app/controllers/user_controller.py
```python
# -*- coding: utf-8 -*-
from flask_controller import FlaskControllerclass UserController(FlaskController):
def user_name(self, name, age: int = 23):
return 'username'```
flask_app/controllers/admin/login_controller.py
```python
# -*- coding: utf-8 -*-
from flask_controller import FlaskControllerclass LoginController(FlaskController):
def index(self):
return 'Login index'```
flask_app/main.py
```python
# -*- coding: utf-8 -*-from flask import Flask
from flask_controller import FlaskControllerRegister
app = Flask(__name__, static_folder=None)
# 自动注册路由
register = FlaskControllerRegister(app)register.register_package('flask_app.controllers')
```
注册结果
```
Map([
admin.login.index>,
index.index>,
/' (OPTIONS, GET, HEAD, POST) -> user.user_name>
])
```