覆盖django中的save()方法时可以遍历模型字段吗?
Can you iterate through model fields when you overwrite the save() method in django?
我正在我的模型中调用自定义保存方法。 save 方法旨在根据 TextField 的内容在模型中生成一些值。此内容存储在字典中,并正确生成。
我正在尝试编写一个 for 循环来存储字典的值。键对应于模型字段名称:
def save(self, *args, **kwargs):
if self.text != "":
results_dict = analyze(self.text)
for field_name in field_names_list:
self.field_name = results_dict[field_name]
该值未存储在相应的字段中。我需要在这里使用 setattr 吗?
试试这个:
def save(self, *args, **kwargs):
if self.text != "":
results_dict = analyze(self.text)
for field_name in field_names_list:
setattr(self, field_name, results_dict[field_name])
super().save(*args, **kwargs)
我正在我的模型中调用自定义保存方法。 save 方法旨在根据 TextField 的内容在模型中生成一些值。此内容存储在字典中,并正确生成。
我正在尝试编写一个 for 循环来存储字典的值。键对应于模型字段名称:
def save(self, *args, **kwargs):
if self.text != "":
results_dict = analyze(self.text)
for field_name in field_names_list:
self.field_name = results_dict[field_name]
该值未存储在相应的字段中。我需要在这里使用 setattr 吗?
试试这个:
def save(self, *args, **kwargs):
if self.text != "":
results_dict = analyze(self.text)
for field_name in field_names_list:
setattr(self, field_name, results_dict[field_name])
super().save(*args, **kwargs)