首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >姜戈: NoReverseMatch在‘’。‘‘不是有效的视图函数或模式名称

姜戈: NoReverseMatch在‘’。‘‘不是有效的视图函数或模式名称
EN

Stack Overflow用户
提问于 2018-06-20 14:40:16
回答 1查看 1.5K关注 0票数 1

我试图从表单输入中检索数据并将它们插入到模型中。但我收到了这个错误:

[Error NoReverseMatch.“test-management/test/add_test/”不是有效的视图函数或模式名称。1

包含窗体.的.html文件

代码语言:javascript
复制
<form class="form" method="POST" action="{% url 'test-management/test/add_test/' %}">
                        {% csrf_token %}
                        <h2>Add Test</h2>
                        <div class="card-body">
                            <div class="form-group bmd-form-group">
                                <div class="input-group">
                                    <p>Name :</p>
                                    <input type="text" class="form-control" name="name" placeholder="Test Name...">
                                </div>
                            </div>
                            <div class="form-group bmd-form-group">
                              <div class="input-group">
                                  <p>Type :</p>
                                  <input type="text" class="form-control" name="type" placeholder="Test Type...">
                              </div>
                            </div>
                            <div class="form-group bmd-form-group">
                                <div class="input-group">
                                    <p>Date :</p>
                                    <input type="date" class="form-control" name="date" placeholder="Test Date...">
                                </div>
                            </div>
                        </div>
                        <div class="modal-footer justify-content-right">
                            <input type="submit" value="Add">
                            <a href="." class="btn btn-primary btn-link btn-wd btn-lg" id="close">Close</a>
                            <a href="#pablo" class="btn btn-primary btn-link btn-wd btn-lg" id="add_new">Add & New</a>
                            <a href="." class="btn btn-primary btn-link btn-wd btn-lg" id="add">Add</a>
                        </div>
                    </form>

错误可能是由表单的操作引起的,但我不知道如何纠正它。

urls.py

代码语言:javascript
复制
from test_management.views import (test_list, subject_list, topic_list, question_list, import_question, add_test)

urlpatterns = [
    url(r'^test-management/test/add_test/', add_test, name='add_test'),
]+ static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

views.py

代码语言:javascript
复制
from django.shortcuts import render
from django.http import HttpResponse
from django.http import HttpResponseRedirect
from .models import Test

def add_test(request):
    if request.method == 'POST':
        test_name = request.POST.get('name')
        test_type = request.POST.get('type')
        test_date = request.POST.get('date')
        test_obj = Test(test_name = test_name, test_type = test_type, test_date = test_date)
        test_obj.save()
        tests = Test.objects.all()
    return render(request, 'test_list.html', {'tests' : tests})

models.py

代码语言:javascript
复制
class Test(models.Model):
    # candidate_id = models.ForeignKey('Candidate', on_delete=models.CASCADE)
    # admin_id = models.OneToOneField('Admin', on_delete=models.CASCADE)
    test_name = models.TextField(max_length=45)
    test_type = models.TextField(max_length=45)
    test_date = models.DateField()
    create_date = models.DateTimeField(auto_now_add=True)

    def __str__(self): 
        return self.test_name

谢谢你帮我解决这个错误!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-20 14:41:56

作为url标记的参数,您应该使用url,而不是正则表达式:

代码语言:javascript
复制
<form class="form" method="POST" action="{% url 'add_test' %}">

而不是

代码语言:javascript
复制
<form class="form" method="POST" action="{% url 'test-management/test/add_test/' %}">
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50950864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档