1

一位前端开发人员给了我一个由 html 表单组成的前端布局。我作为后端开发人员需要从表单中获取数据并将其存储在数据库中。我正在使用 django 2.0 版进行网站开发。我不想使用 django 表单,因为那样我将被迫对 html 代码进行大量更改。如何从 HTML 表单的输入字段中提取数据?


假设我们在 index.html
myapp/templates/index.html文件中有一个简单的 HTML 表单,
在表单中,数据必须仅使用 post 方法发送。

<form action="{% url 'myapp:update' %}" method="post">
<input type="text" name="first_field"/><br>
<input type="text" name="second_field"/><br><br>
<button type="submit" value="Submit"/>
</form>

表单的目的是更新数据库。
myapp/models.py

from django.db import models
class Person(models.Model):
    first_name=models.CharField(max_length=30)
    last_name=models.CharField(max_length=30)

我的应用程序/urls.py

 from django.urls import path,include
 from . import views
 app_name='myapp'
 urlpatterns = [
 path('index/', views.index, name='index'),
 path('update/', views.update, name='update'),
 ]

myapp/views.py
在 vi​​ews.py 文件中,表单中的任何元素都可以使用

request.POST['nameOfTheFieldInTheForm']

from django.shortcuts import render

# Create your views here.
def index(request):
    return render(request, 'myapp/index.html', {})

def update(request):
    # print('Inside update function')
    if request.method=='POST':
        # print("Inside post block")
        first_field_data=request.POST['first_field']
        second_field_data=request.POST['second_field']
        x=Person(first_field=first_field_data,
        second_field=second_field_data)
        x.save()
    return index(request)
4

0 回答 0