请求未进入视图,但显示了正确的URL

时间:2019-02-03 14:47:59

标签: django django-models django-forms

表单被加载到html页面中,但是当我单击“提交”按钮时,它什么也不显示(没有在视图中使用的HttpResponse)。但是它显示了url(http://localhost:8000/datainsert),如我在urls.py中所述。请指出我的代码出了什么问题。

forms.py

from django import forms
from .models import Test
class TestForm(forms.ModelForm):
    class Meta:
    model = Test
    fields = '__all__'

views.py

def datainsert(request):
    if request.method == 'POST':
        form = TestForm(request.POST)
        if form.is_valid():
            form.save()
        return HttpResponse('Saved')
    return HttpResponse('Not saved')

urls.py

from django.conf.urls import url
from . import views
from .views import index, datainsert, testing

urlpatterns = [
    url(r'^', views.index, name='index'),
    url(r'^datainsert', views.datainsert, name='datainsert'),
]

index.html

<html>
    <head>
        <title>My Web</title>
    </head>
    <body>
        <form action="{% url 'myapp:datainsert' %}" method="POST">
            {% csrf_token %}
        {{form}}
        <button type="submit">Submit</button>
    </form>
    </body>
</html>

1 个答案:

答案 0 :(得分:0)

您没有终止空网址。

player_id

当前它匹配所有可能的路径。