Installation
Usage
Api 開發
###初始化專案
flask admin start-project
依照後續指示建置基本專案
啟用 system app
flask admin start-system-app
此app包含基本用戶帳號,RBAC權限管理模組以及多國語言模組
啟用 task app
flask admin start-task-app
此app包含任務對列模組
新增 app
flask admin start-new-app
新增一個乾淨的app,會自動幫忙建置好app架構
資料庫遷移
第一次使用
flask db init
flask db migrate
flask db upgrade
此後
flask db migrate
flask db upgrade
對資料庫模型進行變動時,皆需要進行資料庫遷移來達成更新資料庫。
API test
Create Role Template
下指令
flask admin start-project
會同時把API測試的role template也建起來(建立一個tests資料夾)
設定檔說明
config/dev.yaml中,
變數說明:
- TEST_INIT_DB_ON_TEST:每次測試前是否要初始化資料庫資料
- TEST_EXECUTE_ALL_TEST:是否要執行所有測試(沒有要執行所有測試的話,需自行在manage.py中撰寫程式碼)
- TEST_ACCOUNT:設定各role的帳密
建立app底下的test
下指令
flask admin start-system-app
apps/system/tests/test.py為測試範例,可以參考
執行所有測試
在config/dev.yaml中,將TEST_EXECUTE_ALL_TEST設定為True,
下指令
python manage.py test
時,就會執行所有測試,這邊說明一下manage.py中的程式碼,
在test function中,app.config['TEST_EXECUTE_ALL_TEST']為True時,
會先去apps資料夾底下的每個app下面的tests/test.py中,將所有class抓出來,
讓這些class的metaclass都改成tests/meta_class的MetaClass,
為的是保證所有test case的function name都是唯一的(在function名後面加上module名以及class名的後綴),這樣才能保證都會執行到,
在這邊先稱這些class為app_test_classes, 接著,在test/roles底下,會抓出所有py檔的class,
所以有幾個role就請增加幾個「role名_test.py」,內容請參照superuser_test.py,
並且在config/dev.yaml中新增role的帳密 然後會將這些class都去繼承app_test_classes,讓所有role都去測所有test case。
這邊說明一下,role的class會去繼承tests/base.py的TestBase,
TestBase class繼承了flask_testing的TestCase,
所以必須override create_app function,此function必須回傳一個Flask instance,
並override setUp function(每個測試執行前會先執行setUp),
裡面包含了針對資料庫做資料的初始化(清空資料,insert初始資料),
並且獲取此role的帳密,call login API做登入的動作(獲取token),
tests/functions/sqls請放入資料庫的初始資料的insert sql。
執行單一測試
在config/dev.yaml中,將TEST_EXECUTE_ALL_TEST設定為False,
並且在manage.py裡,要將所需要測的role class以及app test class import進來,
並且讓role class去繼承app test class,最後single_test.addTest裡要加進去。
Release files for flask-restful-helper 1.3.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| flask_restful_helper-1.3.10-py3-none-any.whl | Python 3 | none | any | Details |
Release files / flask_restful_helper-1.3.10-py3-none-any.whl
| Download URL | flask_restful_helper-1.3.10-py3-none-any.whl |
|---|---|
| Size | 41.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8d05cdb45fdd39519ae61419097a8a7aae4f1d65baa63f22d63fd1b636965ed7
|
|
BLAKE2b-256 checksum How to use checksums |
b3fd0f91bebbd6237981d49d252c803b270fb82fc62e1f9b2c15f42fcd49b998
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.4.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.9
|