【发布时间】:2020-11-12 04:12:42
【问题描述】:
我有一个 ServiceProvider 模型。当我在 CSV 中导入它时,它提供类别、国家、州、城市、名称的提供者 ID。在 CSV 中导入时如何获取名称而不是 ID。
这是我的 models.py
class ServiceProvider(models.Model):
name = models.OneToOneField('accounts.User', on_delete=models.CASCADE)
Date_Of_Birth = models.DateField(null=True)
# upload_Photograph = models.ImageField(upload_to='images/')
Education_Qualification = models.CharField(max_length=254, null=True)
category = models.ForeignKey('accounts.Category', null=True, on_delete=models.CASCADE, related_name='category')
phone_No = models.IntegerField(null=False)
alternate_No = models.IntegerField(null=True)
bank_account_no = models.IntegerField(null=True)
IFSC_code = models.IntegerField(null=True)
branch_name = models.CharField(max_length=254, null=True)
PAN = models.CharField(max_length=254, null=True)
country = models.ForeignKey('accounts.Country', null=True, on_delete=models.CASCADE, related_name='country')
state = models.ForeignKey('accounts.State', null=True, on_delete=models.CASCADE, related_name='state')
cities = models.ForeignKey('accounts.City', null=True, on_delete=models.CASCADE, related_name='cities')
address = models.CharField(max_length=254)
def __str__(self):
return self.name.username
这是我的观点。py
@login_required
def export_csv(request):
response = HttpResponse(content_type='text/csv')
response['Content-Disposition'] = 'attachment; filename="user-serviceprovider.xls"'
writer = csv.writer(response)
writer.writerow(['name', 'Date_Of_Birth', 'Education_Qualification', 'category','phone_No','alternate_No','bank_account_no','IFSC_code','branch_name','PAN','country','state','cities','address'])
users = ServiceProvider.objects.all().values_list('name', 'Date_Of_Birth', 'Education_Qualification', 'category','phone_No','alternate_No','bank_account_no','IFSC_code','branch_name','PAN','country','state','cities','address')
for user in users:
writer.writerow(user)
return response
【问题讨论】:
标签: python python-3.x django django-models export-to-csv