我对flask还是很陌生,在创建新项目时一直在阅读有关Blueprints的用法。我目前正在为自己创建一个小型个人网站,但是我对应该在哪里进行某些处理有一些疑问。
说我想从数据库中检索一些博客文章,我可以创建一个模型并使用它来检索我想要的所有数据,但是我目前正计划编写代码以启动对数据库中博客文章的检索。视图路线,我觉得这是一种错误的方法,应该从视图文件中删除尽可能多的逻辑...?
如果这个假设是正确的,那么通常将所有功能逻辑放在哪里?您是否会在应用程序内创建一个帮助程序文件,并将该文件专用于处理所有自定义逻辑?
答案 0 :(得分:0)
您发现的大多数代码库都具有MVC结构
Models文件夹将包含“ models”,这基本上是一个类的花哨术语,这些类能够与您的关系数据库中的特定表进行交互。
Views文件夹将包含您可以呈现的所有html模板。
Controllers文件夹将包含控制器,它们基本上是路由,由其他服务或您的前端调用。
将“业务/功能逻辑”分离到名为“管理器”的文件夹中也是一个好习惯。
假设您有一个名为resource_controller
的控制器,您可以在此处编写用于处理对与此资源有关的路由的API请求的逻辑。
resource_controller
的所有业务逻辑应保存在resource_manager
中。所有对数据的检索,操作应由resource_manager
处理。您还需要一个resource
模型。 resource
的工作是对数据库执行CRUD操作,并将必要的数据返回到resource_manager
,后者将依次将数据处理为信息并将其传递给resource_controller
。您可以根据需要从resource_controller
返回已处理的数据。
您可能还会有一个helper
文件,其中包含多个管理员共享的代码。