Django/Bootstrap模式未提交

2024-10-02 12:29:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用AJAX以bootstrap4模式提交Django表单,但由于某些原因它没有提交。当你点击submit按钮时,它只是关闭了模态,其他什么都不会发生。内容至少在情态体中正确显示,但就是不提交。在

这是我的观点

class GaasWaferDesignFormView(SuccessMessageMixin, AjaxTemplateMixin, CreateView):
    template_name = 'engineering/gaas_wafer_designs/gaas_wafer_design_form.html'
    ajax_template_name = 'engineering/gaas_wafer_designs/gaas_wafer_design_form_inner.html'
    form_class = GaasWaferDesignForm
    model = GaasWaferDesign
    form = GaasWaferDesignForm()
    success_url = reverse_lazy('engineering:gaas_wafer_design_list')
    success_message = "Success!"

    def form_valid(self, form):
        object = form.save(commit=False)
        object.created_by = self.request.user
        object.save()
        return super(GaasWaferDesignCreateView, self).form_valid(form)

这是我的模板,它有模态结构和模态按钮(砷化镓晶圆设计_列表.html)... 在

^{pr2}$

这是我的网址。。。在

url(r'^gaas-wafer-designs/create/$', gaas_wafer_designs.GaasWaferDesignFormView.as_view(), name='gaas_wafer_design_create'),

最后是我的砷化镓晶圆设计表_内部.html(包含模态正文内容的模板)

{% load widget_tweaks %}
<form method="post" action="{% url 'engineering:gaas_wafer_design_create' %}">{% csrf_token %}
  <div class="row">
    <div class="form-group col-sm-12">
      <div class="form-group">
        <label for="{{ form.design_ui.id_for_label }}"><b>Design UI</b></label>
        {% render_field form.design_ui class+="form-control" %}
        {{ form.design_ui.errors }}
      </div>
    </div>
  </div>
  <!--/.row-->
  <div class="row">
    <div class="form-group col-sm-4">
      <div class="form-group">
        <label for="{{ form.emitting.id_for_label }}"><b>Emitting</b></label>
        {% render_field form.emitting class+="form-control" %}
        {{ form.emitting.errors }}
      </div>
    </div>
    <div class="form-group col-sm-4">
      <div class="form-group">
        <label for="{{ form.contact_location.id_for_label }}"><b>Contact Location</b></label>
        {% render_field form.contact_location class+="form-control" %}
        {{ form.contact_location.errors }}
      </div>
    </div>
    <div class="form-group col-sm-4">
      <div class="form-group">
        <label for="{{ form.optical_power.id_for_label }}">Optical Power</label>
        {% render_field form.optical_power class+="form-control" %}
        {{ form.optical_power.errors }}
      </div>
    </div>
  </div>
  <!--/.row-->
  <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
  <input type="submit" class="btn btn-primary" value="Save changes" />
</form>

谢谢你的帮助!在


Tags: divformforhtmlgroupcollabelclass
1条回答
网友
1楼 · 发布于 2024-10-02 12:29:07

我相信这个对象已经创建,但是你的表单没有返回到成功的url。在表单的末尾,您应该重定向到success\u url。我不明白你在有效表格末尾的报税表是想达到什么目的。在

def form_valid(self, form):
    ...
    return HttpResponseRedirect(self.get_success_url())

你还可以覆盖success\u url并在需要时添加按摩。在

^{pr2}$

我已经为这些功能编写了一个简单易用的包,您可以在django-bootstrap-modal-forms上查看它。在

相关问题 更多 >

    热门问题