【发布时间】:2022-01-20 09:36:05
【问题描述】:
我有包含用户地址和他的电话号码的 csv 文件,我如何将其导入我的地址表中。因为我不知道每个用户的用户 ID。
user_id__phone,address1,address2,state,country,pincode
99999999,"addrss","addres2",somestate,Country,11111
我收到以下错误
Line number: 1 - null value in column "user_id_id" of relation "proj_auth_useraddress" violates not-null constraint DETAIL: Failing row contains (432, null, null, someaddress, , , null).
但我知道用户和地址的关系是通过他的电话号码。 user_id__phone
# Models.py
class AppUser(AbstractUser):
phone = models.CharField(max_length=15, unique=True, null=True)
...
class UserAddress(models.Model):
address_id = models.AutoField(primary_key=True)
user_id = models.ForeignKey(AppUser, on_delete=models.CASCADE)
lat = models.FloatField(null=True, blank=True)
lng = models.FloatField(null=True, blank=True)
address1 = models.CharField(max_length=100)
address2 = models.CharField(max_length=100, null=True, blank=True)
city = models.CharField(max_length=50)
pincode = models.IntegerField()
# Admin.py
@admin.register(UserAddress)
class AddressAdmin(ImportExportModelAdmin):
resource_class = AddressAdminResource
# Resource.py
class AddressAdminResource(resources.ModelResource):
class Meta:
model = UserAddress
import_id_fields = ('address_id',)
【问题讨论】:
-
分享csv文件结构,方便我们更好的帮助
-
@Polymath 完成。
-
导入数据的代码在哪里(查看)
-
@PavanKumarTS 它在
# Admin.py和# Resource.py我使用ImportExportModelAdmin为它
标签: django django-models django-rest-framework