首页 > 解决方案 > 如何将数据从 html 传递到 django 视图以在 URL 中使用?

问题描述

使用 django url 时出现错误。点击提交按钮后,我想传递名称输入字段的值。

假设我有这个 html 表单-

<form method='POST' action="{% url 'submittedform' slug=[firstname] %}">
                        {% csrf_token %}
                        <div>
                            <label for="name">Name</label>
                            <input type="text" name="firstname" id="name">
                        </div>

                        <div>
                            <label for="email">Email</label>
                            <input type="email" name="useremail" id="email">
                        </div>

                        <div>
                            <label for=phone>Phone</label>
                            <input type="text" name="phonenumber" id="phone" maxlength="12" pattern="[0-9]{10}">
                        </div>

                        <input type="submit" name="" id="btn" value="Submit">
                    </form>

这是我处理它的观点-

def submittedform(request, slug):

    if request.method == 'POST':
        # do something here
        return render(request,'myapp/welcome.html')

    return render(request,'myapp/welcome.html')

这是我处理它的观点-

urlpatterns = [
    path('index/',views.index ,name='index'),
    path('welcome/<slug:slug>/',views.submittedform, name='submittedform')
]

我没有使用 django 表单。我怎样才能获得欢迎/名称工作。

标签: htmldjangoview

解决方案


如果要将变量传递给 URL,则需要使用以下值重定向:

from django.shortcuts import redirect

return redirect("/welcome/%s/" % slug)

推荐阅读