• modelform, formset, modelformset


    参考地址:https://www.cnblogs.com/DI-DIAO/p/8978780.html

    https://www.cnblogs.com/WiseAdministrator/articles/10975786.html

    https://www.cnblogs.com/clschao/articles/10486468.html#part_7

    formset:适用于对多个表单进行操作,字段需要也可以用model中的表的字段来作为验证规则。

    modelfoemset:适用于对多个表单进行操作,字段需要也可以用model中的表的字段来作为验证规则

    class StudyView(View):
    def get(self, request, course_id):
    # 创建formset对象
    formset_cls = modelformset_factory(model=models.StudyRecord, form=StudyRecordModelForm, extra=0)
    study_obj = models.StudyRecord.objects.filter(course_record_id=course_id)
    # 修改formset中的queryset的范围,此时的formset_cls会显示所有的StudyRecord中的数据
    formset = formset_cls(queryset=study_obj) # 通过自己指定queryset范围,前端只显示我们需要的数据
    return render(request, 'saleshtml/study.html', {'formset': formset})

    def post(self, request, course_id):
    formset_cls = modelformset_factory(model=models.StudyRecord, form=StudyRecordModelForm, extra=0) # extra表示显示完全部数据后,在后面留n行数据为空的地方
    formset = formset_cls(request.POST)
    if formset.is_valid():
    formset.save()
    return redirect(request.path)

    else:
    return render(request, 'saleshtml/study.html', {'formset': formset})

    formset部分自己查资料

     modelformset前端中要加入:(固定写法,不要问我为什么,我目前也不知道)

    1. {{ formset.management_form }},  2.  {{ field.id }} # field是循环formset之后的对象

  • 相关阅读:
    HNUSTOJ-1675 Morse Code(DFS+字典序搜索)
    HNUSTOJ-1638 遍地桔子(贪心)
    HNUSTOJ-1521 塔防游戏
    HNUSTOJ-1565 Vampire Numbers(暴力打表)
    HDUSTOJ-1559 Vive la Difference!(简单题)
    HDUSTOJ-1558 Flooring Tiles(反素数)
    HNUSTOJ-1600 BCD时钟
    胡雪岩04
    新概念4-24
    曾国藩家训02
  • 原文地址:https://www.cnblogs.com/JackShi/p/12886409.html
Copyright © 2020-2023  润新知