当前位置: 代码迷 >> python >> 在Django中使用API??调用创建新模型实例
  详细解决方案

在Django中使用API??调用创建新模型实例

热度:108   发布时间:2023-06-13 14:14:23.0

我不确定如何在我的Django应用中解决该问题:

我需要每n天调用一次API。 我可以进行此调用并通过Python获取所需的数据,但是我应该将代码放在哪里呢?

我是否要将代码放在特定的view ,然后将视图映射到一个URL,并在我想基于API调用创建新的模型实例时调用该URL?

还是我走错路了?

我通常的方法是结合使用自定义 ,然后通过计划的运行它们

您可以使用与运行默认命令相同的方式来运行自定义命令:

python manage.py <your_command_name> <your_command_arguments>

听起来您正在尝试安排可调度的工作。 在这种情况下效果很好。

您将创建一个每N天运行一次的任务。 在该任务中,您将放置调用API的代码并根据需要处理响应。

参考:

我是否将代码放在特定的视图中

Django view是可调用的,必须接受HTTP请求并返回HTTP响应,因此,除非您需要能够通过HTTP调用代码,否则根本没有必要使用视图,即使您想拥有一个视图公开此代码并不意味着进行API调用等的代码必须存在于视图中。

请记住,“ django应用程序”基本上是Python软件包,因此,除了django特定的内容(视图,模型等)之外,您还可以放置所需的任何模块,并在这些模块上调用视图,自定义命令等。 因此,只需为您的API客户端等编写一个模块,该模块具有执行获取/创建模型实例/任何工作的功能,然后从有意义的地方调用此功能(视图,由cron作业调用的自定义命令,celery任务,无论如何) 。