我遇到的问题是,我想用json值更新Django模型。问题是json中的一些值是一个包含多个数字的列表。你知道吗
这就是json的样子:
json = {'fields': {'resources': [], 'initiative': [8, 21, 22]}, 'pk': 81}
{'fields': {'resources': [], 'initiative': [5, 8, 22]}, 'pk': 82}
{'fields': {'resources': [], 'initiative': [8, 22]}, 'pk': 83}
{'fields': {'resources': [], 'initiative': [6]}, 'pk': 84}
def update_model():
for row in json:
Model.objects.filter(id=row['pk']).update(initiative_id=row['fields']['initiative'][0], resources_id=row['fields']['resources'][0])
我想不出如何在堆栈上正确地隔开模型线。你知道吗
无论如何,当我运行这个方法时,我得到“IndexError:list index out of range”,大概是因为这个方法只能处理一个值为1的列表。你知道吗
我需要数组中的最高值来更新模型。你知道吗
型号:
class Model(models.Model):
name = models.CharField(max_length=100, unique=True)
genre = models.ManyToManyField(Genre, blank=False)
platform = models.ManyToManyField(Platform, blank=True)
standard_type = models.ForeignKey(StandardType, default=SetDefaults.set_standard_type_default, blank=True)
owner = models.ManyToManyField(Owner, blank=True)
evaluated_by = models.ForeignKey(Evaluator, blank=True, default=SetDefaults.set_default_evaluator())
business_driver= models.ManyToManyField(BusinessDriver, blank=True)
initiative = models.ForeignKey(Initiative, null=True, blank=True)
solution = models.ManyToManyField(Solution, blank=True)
point_of_contact = models.ForeignKey(Contact, null=True, default=SetDefaults.set_default_contact, blank=True)
description = models.TextField(blank=True)
required_by = models.ForeignKey(LifecycleStage, null=False, default=SetDefaults.set_required_by_default, blank=True)
resources = models.ForeignKey(Resource, null=True, blank=True)
change_notes = models.TextField(null=True, blank=True)
change_date = models.DateField(null=True, blank=True)
is_active = models.BooleanField(default=True)
假设您只想从“计划”或“资源”列表(如果存在)中指定第一个值:
相关问题 更多 >
编程相关推荐