Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:鸡还是蛋的问题_Python_Django_Design Patterns_Application Design - Fatal编程技术网

Python Django:鸡还是蛋的问题

Python Django:鸡还是蛋的问题,python,django,design-patterns,application-design,Python,Django,Design Patterns,Application Design,我正在构建一个应用程序,该应用程序将发送一个API调用,并在APIRecord(models.Model)类中处理信息后保存结果信息 1)我是否应该构建一个单独的类,使该类执行API调用,处理信息(包括检查业务规则),然后创建我的apirect()类的实例 或 2)我是否应该使用适当的方法构建一个单独的类来进行处理和调用API,然后在我的模型中重写apirect.save()方法来调用单独类的API方法,然后保存结果 或 3)我是否应该使用适当的方法来调用API和处理响应(包括检查某些值和其他业

我正在构建一个应用程序,该应用程序将发送一个API调用,并在
APIRecord(models.Model)
类中处理信息后保存结果信息

1)我是否应该构建一个单独的类,使该类执行API调用,处理信息(包括检查业务规则),然后创建我的
apirect()
类的实例

2)我是否应该使用适当的方法构建一个单独的类来进行处理和调用API,然后在我的模型中重写
apirect.save()
方法来调用单独类的API方法,然后保存结果

3)我是否应该使用适当的方法来调用API和处理响应(包括检查某些值和其他业务规则)来构建模型类

我尝试了#2,但在灵活性方面遇到了问题(但我仍然愿意接受建议)。我倾向于#1,但我还不确定所有的负面因素是什么?

这是设计决策。 这取决于您的设计和编程兴趣。 我使用了你说的三种方法的组合。若我需要一些可以从其他字段构建的信息,那个么我将在模型类中创建一个内部函数。如果我需要数据库的其他记录来执行某些操作,我将在模型类之外创建一个函数。其他不寻常的需求将被计算到我需要的任何地方