form_obj前端页面(添加,编辑)和后端代码

后端

def baoming_change(request,edit_id=None):

    obj = models.Enrollment.objects.filter(pk=edit_id).first()

    form_obj = BaomingForm(instance=obj)

    title = '添加报名信息' if not obj else '编辑报名信息'

    if request.method == 'POST':
        form_obj = BaomingForm(request.POST,instance=obj)
        if form_obj.is_valid():
            form_obj.save()

            return redirect(reverse('baoming'))

    return render(request,'forms.html',{'form_obj': form_obj,'title':title})

  

前端页面

{% extends 'layout.html' %}

{% block content %}


    <div class="panel panel-info">
          <div class="panel-heading">
              <h3 class="panel-title">{{ title }}</h3>
          </div>
          <div class="panel-body">
              <div class="col-lg-5 col-lg-offset-3 " style="margin-top: 80px">
                <form class="form-horizontal" novalidate method="post">
                    {% csrf_token %}
                    {% for field in form_obj %}

                        <div class="form-group {% if field.errors %}has-error{% endif %}">
                            <label for="{{ field.id_for_label }}"
                                class="col-sm-2 control-label">{{ field.label }}</label>
                            <div class="col-sm-10">
                                {{ field }}
                                <span class="help-block">{{ field.errors.0 }}</span>
                            </div>
                        </div>
                    {% endfor %}

                    <div class="form-group">
                        <div class="col-sm-offset-2 col-sm-10">
                            <button type="submit" class="btn btn-default">保存</button>
                        </div>
                    </div>
                </form>
            </div>
          </div>
        </div>

{% endblock %}

  

猜你喜欢

转载自www.cnblogs.com/gyc-tzx/p/11043580.html