【问题标题】:Django retrieve data from html formDjango 从 html 表单中检索数据
【发布时间】:2021-02-13 10:50:55
【问题描述】:

这是我的 html 表单

<form action="#about" method="POST">
 {%csrf_token%}
<h2>Signup today</h2>
<input type="text" name="name"  class="form-control" placeholder="Full name" required="">

<input type="email" name="email" class="form-control" placeholder="Your email address" required="">

<input type="password" name="password" class="form-control" placeholder="Your password" required="">

<button class="submit-btn form-control" id="form-submit">Get started</button>
</form>

这是views.py

def Student(request):
    if request.method=="POST":
        print('this post')
        name =request.POST['name']
        email =request.POST['email']
        print(name, email)  
    return render(request,'#about') 

这是我的 urls.py

from django.urls import path

from . import views

urlpatterns = [
      path('',views.index, name='index.html'),  
      path('',views.Student, name="#about"),  
]

我是 Django 新手,我在过去的 24 小时里都在努力解决这个问题,它没有显示任何错误,但没有打印 views.py 中的任何内容,也没有检索表单数据也是如此,谁能向我解释我做错了什么以及如何正确地将html数据表单检索到django?非常感谢您!

【问题讨论】:

  • path('',views.index, name='index.html'), path('',views.Student, name="#about"), 为什么两条路径都是'' 将其中一个设置为'/',另一个设置为`'/students'`
  • 我刚试了一下,还加了type="submit",还是没有打印出来,也没有得到任何数据
  • 你在发送post请求吗?
  • 是的,我想我也不知道如何指定“Student.view”的路径,因为我只是将 STUDENT.VIEW 中的内容复制到 index.view 中,这就是(def index (request): return render(request,"index.html") ),它起作用了,我仍然不知道出了什么问题,但你说清楚了路径,如果你解释它是如何工作的,谢谢这么多!!

标签: python django


【解决方案1】:

您的按钮需要type="submit" 像这样:

<button class="submit-btn form-control" id="form-submit" type="submit">Get started</button>

【讨论】:

  • 感谢您的提示,它使我接近我想要的,但它仍然没有打印出来或获取任何数据:c
  • 试试这个怎么样:action="{% url 'APP_NAME:Student' %}"
猜你喜欢
  • 1970-01-01
  • 2013-08-04
  • 2015-03-22
  • 2022-01-20
  • 2020-07-07
  • 2020-09-07
  • 1970-01-01
  • 2020-07-28
  • 2018-10-03
相关资源
最近更新 更多