Django:如何基于json文件中的数据创建模型实例?
在项目中,有一个数据库中包含现有实例的模型Django:如何基于json文件中的数据创建模型实例?,json,django,Json,Django,在项目中,有一个数据库中包含现有实例的模型 class Instagram(models.Model): userid = models.CharField(max_length=255, unique=True) username = models.CharField(max_length=50, blank=True, null=True) full_name = models.CharField(max_length=50, blank=True, null=Tru
class Instagram(models.Model):
userid = models.CharField(max_length=255, unique=True)
username = models.CharField(max_length=50, blank=True, null=True)
full_name = models.CharField(max_length=50, blank=True, null=True)
avatar = models.URLField(max_length=255, blank=True, null=True)
bio = models.CharField(max_length=255, blank=True, null=True)
.....
.....
还有另一个模型,到目前为止还没有Instances
class InstagramDemographicsAnalitics(models.Model):
instagram = models.ForeignKey(Instagram, related_name='demographics')
age_group = models.CharField(max_length=10)
gender = models.CharField(max_length=10, default='female')
viewer_percentage = models.DecimalField(default=0, max_digits=5, decimal_places=2)
需要从与项目位于同一文件夹中的文件statistic.json中获取相应用户ID的数据,并在此基础上创建InstagramDemographicsAnalitics模型的实例
我不知道怎么做。我确实需要一系列操作的建议,如果可能,还需要代码示例。作为示例,此函数将以
Instagram
为例,并返回InstagramDemographicsAnalitics
的实例:
def get_ida_instance(instagram):
# Load all users from JSON file
all_users = json.load('example.json')
# Find the one user, this depends on the format of your JSON file
my_user = [x for x in all_users if x['userid'] == instagram.userid][0]
# Map the JSON fields to your Model
ida = InstagramDemographicsAnalitics()
ida.instagram = instagram
ida.age_group = my_user['age_group']
ida.gender = my_user['gender']
ida.viewer_percentage = float(str(my_user['viewer_percentage']))
ida.save() # If you want to persist it to the database
# Return the instance
return ida
当然,这取决于JSON文件的实际格式。能否显示一些示例
JSON
对象?@Willem Van Onsem,您是指example.JSON中的数据examle?