Python-RESTful:目录结构
我对python和flask相当陌生,我创建了一个身份验证系统,一个基于JWT令牌的身份验证。目前我的目录结构是: 注:如有可能,请详细回答 由于名称不言自明,models.py有一个名为Python-RESTful:目录结构,python,flask,flask-restful,Python,Flask,Flask Restful,我对python和flask相当陌生,我创建了一个身份验证系统,一个基于JWT令牌的身份验证。目前我的目录结构是: 注:如有可能,请详细回答 由于名称不言自明,models.py有一个名为UserModel的类,在参考资料中,py有许多类,如UserRegistration,UserLogin,UserLogoutAccess,UserLogoutRefresh,TokenRefresh,AllUsers run.py具有与服务器相关的和应用程序初始化代码,并且端点资源定义如下: api.add
UserModel
的类,在参考资料中,py有许多类,如UserRegistration
,UserLogin
,UserLogoutAccess
,UserLogoutRefresh
,TokenRefresh
,AllUsers
run.py
具有与服务器相关的和应用程序初始化代码,并且端点资源定义如下:
api.add_资源(resources.UserRegistration,'/registration')
我知道它很混乱,但我也不知道python Flask约定,每个类是否都有自己的文件,身份验证代码是否应该放在一个目录中,因为项目显然会增长
我正在考虑以下目录结构:
-Project
-- venv
-- Authentication
-- login.py
-- registration.py
-- logout.py
-- userLogoutRefresh.py
....
....
-- Models
-- UserModel.py
....
....
-- run.py
寻找建议
这是我通常构建Flask项目的方式:
-- Project
-- app
-- models
-- user.py
-- inventory.py
-- views
-- routes
-- static
-- css
-- images
-- js
-- templates
-- utils
-- ..
-- settings
-- local.py
-- staging.py
-- prod.py
-- migrations
-- docs
-- tests
-- manage.py
这使我能够在项目增长时编写更灵活和结构化的代码。例如,对于更大的项目来说,使用single models.py可能会变得很难管理,其他项目也是如此
另外,我更喜欢将虚拟环境保留在项目之外,因为它不需要推送到存储库
在纯Rest API项目中,您可能不需要它的某些部分,如模板、静态等。那么哪个文件夹包含我的
resource.py
类?我将它们放在视图下。此外,routes目录应包含不同的路由文件,并根据不同的项目模块进行分组。因此,所有与用户相关的路由都可以像--routes->users.py
查找Flasky那样运行。
-- Project
-- app
-- models
-- user.py
-- inventory.py
-- views
-- routes
-- static
-- css
-- images
-- js
-- templates
-- utils
-- ..
-- settings
-- local.py
-- staging.py
-- prod.py
-- migrations
-- docs
-- tests
-- manage.py