gpt4 book ai didi

使用rest api的django应用程序-将代码放在哪里

转载 作者:行者123 更新时间:2023-12-04 05:06:08 26 4
gpt4 key购买 nike

我有一个 django 应用程序,该模型存储用户通过 Web 界面输入的数据。

查看/保存模型实例时,我需要使用第三方 REST api。我知道该怎么做,但是我不确定这段代码应该与 django 应用程序一起放在哪里。

我的直觉是将这段代码放在模型类中,但是你也可以使用 View ......我只是不确定。

以前是如何做到的,有很多帖子询问如何做到这一点,但没有一个说明放置代码的最佳位置。

任何指导将不胜感激。

干杯

最佳答案

这是一个主观的问题,所以这里是一个主观的答案。

首先,确保与此外部 REST API 交互的任何代码都驻留在单独的模块中。例如,如果您从字典 API 中获取单词定义,那么与该 API 对话的所有代码理想情况下都应位于单独的 dictionary 中。模块,然后您可以将其导入到您的 View 中。

其次,您的models.py应该只声明您的应用程序的数据模型并定义此模型上的操作,仅此而已。他们不应该关心请求/响应周期、读取文件、渲染模板、进行 HTTP 调用或其他任何事情。按照这种逻辑,您应该从您的 View 中进行这些 REST API 调用,并在需要时将返回的数据传递到您的模型中。

最后,请三思而后行从您的 Django 应用程序进行 REST 调用。 Python 默认执行同步(阻塞)I/O,这意味着只要应用程序在等待 REST 调用完成,它就无法为任何传入的 HTTP 请求提供服务。如果您没有太多用户,这不是问题,但对于需要扩展的应用程序,请记住这一点。您可能想研究 Python 的异步 I/O 库。

关于使用rest api的django应用程序-将代码放在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15507577/

26 4 0