我从我的网站管理员处收到此列表:
[['present', '2'],['present', '1'], ['study', '1'], ['study', '3'], ['present', '4'], ['study', '4'],
第一个选项实际上是Rollcall模型中需要编辑的字段名,第二个选项是用户ID
现在我想把这个列表保存到Rollcall
模型中:
#models.py
class Rollcall(models.Model):
student = models.ForeignKey(User)
present = models.BooleanField(default=False)
study = models.BooleanField(default=False)
所以我首先检查并找到列表中某个特定用户的各个字段, 然后我将为模型中的一个用户保存所有这些字段。我该怎么做?
--更新1:
这是HTML
文件:
{% forstudent in students %}
<tr>
<td>{{student}} </td>
<td> <input type="radio" name="present_{{student.id}}" value="1"></td>
<td> <input type="radio" name="study_{{student.id}}" value="1"></td>
</tr>
{% endfor %}
我以这种方式获取数据,并将它们放入我在第一个问题中解释的列表中:
data_list = [key.split('_') for key in request.POST.keys()][1:]
每个学生可以在场或缺席,也可以学习或不是,我的确切的问题是:如何保存我所有学生的数据?有没有其他方法来解决这个问题而没有data_list
或者其他方法来创建更好的data_list
?
您可以迭代
list
,创建Rollcall
实例并使用bulk_create()
Manager
/QuerySet
方法(这样可以避免大量的数据库命中(只有一个INSERT
查询就足够了),并保证atomicity
)。你知道吗希望对你有帮助。你知道吗
尝试以下操作:
或者在创建字典(
dic
)后批量生成:相关问题 更多 >
编程相关推荐