「已注销」 2019-08-23 09:46 采纳率: 100%
浏览 1052
已采纳

Django表单提交问题,后端接收不到数据

{% extends 'blog_base.html' %}
{% load staticfiles %}

{% block main %}
<h1 class="page-title">Contact</h1>
<article class="post">
    <div class="entry-content clearfix">
        <form action="{% url 'contacts:post_contact'%}" method="post" class="contact-form">
            <div class="row">
                <div class="col-md-6 col-md-offset-3">
                    {% csrf_token %}
                    <input type="text" name="name" value="{{form.name}}" placeholder="Name" required>
                    <input type="email" name="email" value="{{form.email}}" placeholder="Email" required>
                    <input type="text" name="subject" value="{{form.subject}}" placeholder="Subject" required>
                    <textarea name="text" value="{{form.text}}" placeholder="Your Message" required></textarea>
                    <input type="submit" value="Submit" class="btn-send btn-5 btn-5b ion-ios-paperplane" />
                </div>
            </div>  <!-- row -->
        </form>
    </div>
</article>
{% endblock main %}

这是前段静态页面,后端是

def post_contact(request):
    # HTTP 请求有 get 和 post 两种,一般用户通过表单提交数据都是通过 post 请求,
    # 因此只有当用户的请求为 post 时才需要处理表单数据。
    if request.method == 'POST':
        # 用户提交的数据存在 request.POST 中,这是一个类字典对象。
        # 我们利用这些数据构造了 CommentForm 的实例,这样 Django 的表单就生成了。
        form = ContactForm(request.POST)


        if form.is_valid():

            contact = form.save(commit=False)

            contact.save()

            # 然后重定向到 get_absolute_url 方法返回的 URL。
            return render(request, 'contacts/contact.html')
    # 不是 post 请求,说明用户没有提交数据,重定向到文章详情页。
    return render(request, 'contacts/contact.html', {'form': form})

如何修改才能获取到前段的提交的值,并存入库中,测试了好久,dug显示页面提交成功 200,但是后端断点并未访问,感谢各位大神帮助!

  • 写回答

1条回答 默认 最新

  • 是阿浩啊。 2021-11-03 16:17
    关注

    后端把接受的request,body是个str 在视图中把他json.loads(request.body)转化为dic 再取值

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已采纳回答 6月19日

悬赏问题

  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作