gpt4 book ai didi

python - 在 Django 应用程序中使用 Python 对象

转载 作者:行者123 更新时间:2023-11-28 18:40:27 24 4
gpt4 key购买 nike

如果这看起来像是一个愚蠢的问题,我深表歉意,但我仍然是一个非常新的 Python/Django 程序员。在 Django 应用程序中创建不是将保存在数据库中的模型的 Python 对象是否正常?

我正在创建一个相当大的 Django 应用程序,对我来说,我的代码真的开始“有味道”了。我的意思是我的观点变得非常大,因为我正在采用过程性而非面向对象的方法。我的直觉告诉我,如果我使用更多具有自己的属性和行为的对象而不是将信息从一个函数传递到另一个函数,那么从长远来看,我的代码可能会更简单、更容易测试并且更健壮。

让我感到困惑的是,这些不是我想要保存在数据库中的对象,所以我不太清楚是否应该使用它们,如果应该的话,我应该把它们放在哪里。我提出的方法在 Django 应用程序中是典型的吗?如果是这样,我应该在哪里存储那些与 Django 模型/ View /模板结构相关的对象?此外,是否有任何流行的 Django 模块或库可以执行我所描述的我应该学习的内容?

预先感谢您的回复。

最佳答案

您可以将对象存储在任何地方。您的 View 文件或模型文件或任何地方都可能有辅助函数。我更喜欢将杂项函数放在 utils.py 文件中,但这不是惯例,只是我最终会做的事情。我最终将大部分杂项辅助函数和基类放在一个 common 应用程序中,更具体地说是一个 common.utils 文件。

在一个项目中,我有很多应用程序,每个应用程序都有一个 api 客户端。客户端的基类位于名为 common 的应用程序中。然后每个应用程序在 client.py 文件

中都有其特定的客户端
  • 项目
    • 常见的
      • 客户
    • 应用1
      • 客户
    • 应用程序2
      • 客户

然后在app1客户端

from project.common.client import BaseClient

class ConcreteApp1Client(BaseClient):
pass

然后在我的 View 或管理命令或模型或任何可以正常导入和使用具体客户端的地方。 from project.app1.client import ConcreteApp1Client

关于python - 在 Django 应用程序中使用 Python 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26876292/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com