Lid*_*iro 2 python django django-models
用文件中的总行值更新总计字段的最佳方法是什么?在模型或视图或其他中实现?如何使文件注册始终通过django-admin
模型.py
class Registry(models.Model):
file_upload = models.FileField(blank=True, null=False) #csv or xlsx
total = models.CharField(max_length=100, null=True, blank=True, default=None)
def save(self):
with open(self.file_upload) as f:
self.total = sum(1 for line in f)
return self.total
Run Code Online (Sandbox Code Playgroud)
错误:
TypeError: expected str, bytes or os.PathLike object, not FieldFile
Run Code Online (Sandbox Code Playgroud)
使用方法可以简单的读取上传文件的文件内容.read()。
然后对这些内容做任何您想做的事情。
def save(self):
self.total = sum(1 for line in self.file_upload.read())
super(Registry, self).save(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
无需在操作系统级别再次打开。
| 归档时间: |
|
| 查看次数: |
1226 次 |
| 最近记录: |