打开Django数据库中存储为记录的文本文件

2024-06-16 09:38:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要处理.txt文件,该文件具有.csv结构,并作为字段存储在数据库中。应用程序的主要功能是处理这些文件并生成输出。在

每隔一段时间我需要上传新版本,但保留旧版本的记录。这些文件很小,很少超过300kb。我还需要额外的字段与上传者的名称,日期,版本等,这就是为什么我把它作为记录保存在数据库中,而不是在本地文件。 文件记录存储在DB中,类型为models.FileField()

我怎样才能不以字段的形式访问这个记录,而是作为一个文件对象来访问它,并像通常的.txt一样打开它?在

我试过但没用的方法:

listofschedules = ScheduleFile.objects.all
file = listofschedules[0].csvSchedule

with open(file, 'rt', encoding='windows 1250') as csv_input:
      reader = csv.reader(csv_input, delimiter=';')
      print(reader) ...

Tags: 文件csv功能版本txt名称数据库应用程序
1条回答
网友
1楼 · 发布于 2024-06-16 09:38:54

您需要调用all,然后使用文件的path,如the documentation所示。或者对于这个简单的测试,您可以使用first

file = ScheduleFile.objects.first().csvSchedule

with open(file.path, 'rt', encoding='windows 1250') as csv_input:
    reader = csv.reader(csv_input, delimiter=';')
    print(reader)   

相关问题 更多 >