【发布时间】:2017-08-04 15:51:30
【问题描述】:
基本上我有一个从网站上抓取一些数据的程序,我需要在不使用数据库的情况下将其打印到 django 模板或 REST API 中。在没有数据库的情况下如何做到这一点?
【问题讨论】:
基本上我有一个从网站上抓取一些数据的程序,我需要在不使用数据库的情况下将其打印到 django 模板或 REST API 中。在没有数据库的情况下如何做到这一点?
【问题讨论】:
你最好的选择是
a.) 在视图本身中执行抓取,并将上下文字典中的信息传递给模板
或
b.) 写入文件并让您的视图从文件中提取信息。
【讨论】:
Django 可以在没有数据库的情况下运行,但这取决于您启用的应用程序。一些默认功能(身份验证、站点、内容类型)需要数据库。所以你需要禁用这些。如果您需要使用它们,那么您就是 SOL。
其他功能(如会话)通常使用数据库,但您可以将其配置为使用缓存或文件或其他东西。
过去我采用了两种方法:
1) 完全禁用数据库并禁用需要数据库的应用程序:
DATABASES = {}
2) 使用一个虚拟的 sqlite 数据库,这样它就可以与默认应用程序一起使用,无需太多调整,但不要真正将它用于任何事情。我发现这种方法更快,更适合设置快速测试/原型设计。
要真正将数据从抓取工具获取到您的视图中,您可以采取多种方法。将数据存储在缓存中,或者直接将其写入上下文变量等。
【讨论】: