在使用Django时,当我需要对数据库中的数据进行某些操作时,我一直都在使用Django shell。这次,我想在Django Shell中执行以下情形。
我有一个带有许多商店的模型商店。在Django Shell中, 1.导入商店模型 2.使用每个商店名称搜索每个名称,然后根据每个商店名称下载一个csv文件。 3.将下载的csv文件添加到Store模型中的FileField中。
我知道如何#1和#3,但是我对如何做到#2感到困惑。如何在Django Shell中输入商店名称并从商店名称下载csv文件?
答案 0 :(得分:0)
您可以使用requests
库从Internet上获取数据。像这样安装它:
pip install requests
然后,在Django中,您可以使用ContentFile
将下载的数据保存到FileField中。这是一个示例:
import requests
from django.core.files.base import ContentFile
from .models import SomeModel
response = requests.get('https://raw.githubusercontent.com/wireservice/csvkit/master/examples/test_geo.csv')
s = SomeModal.objects.get(id=0)
s.file_field.save('data.csv', ContentFile(response.content))
s.save()