NoReverseMatch位于/ students / viewdata /

时间:2019-01-31 06:42:57

标签: python django

我正在编辑数据以编辑gr_register表,但是该表不起作用。 我遇到以下错误:

  

找不到带有参数'('',)'的'editgr'的反向。尝试了1种模式:
['students/editgr/\\(\\?P(?P<pk>[^/]+)\\\\d\\+\\)$']

views.py

def viewdata(request):
gr = gr_register.objects.all()
search_term = ''

if 'search' in request.GET:
    search_term = request.GET['search']
    gr = gr.filter(first_name__icontains=search_term)
context = {'gr': gr, 'search_term': search_term}
return render(request, 'students/viewdata.html', context)


def addgrregister(request):
form = gr_registerForm(request.POST or None)
if request.method == 'POST':
    if form.is_valid():
        form.save()
        return redirect('home')
return render(request, 'students/addgrregister.html', {'form': form})



def edit_gr(request, pk):
    grno = get_object_or_404(gr_register, pk=pk)
    form = gr_registerForm(request.POST or None, instance=grno)
    if request.method == "POST":
        if form.is_valid():
        form.save()
        return redirect('home')
    else:
        form = gr_registerForm(instance=grno)

    return render(request, 'students/editgr.html', {'form': form}) 

editgr.html

{% extends 'authenticate/base.html' %}
{% block body %}
<div class="container">
    <form method="POST">
        <br/>
        {% csrf_token %}
        <h4>Editing Gr</h4>
        <hr/>
        {% for field in form %}
        <div class="form-group row">
            <label for="id_{{ field.name }}" class="col-2 col-form-label">{{ field.label }}</label>
            <div class="col-10">
                {{ field }}
                {{ field.errors }}
            </div>
        </div>
        {% endfor %}

        <button type="submit" class="btn btn-primary" name="button">Edit GR-Table</button>
    </form>
</div>
{% endblock %}

urls.py

path('editgr/(?P<pk>\d+)', views.edit_gr, name='editgr'),

viewdata.html

<div class="container">
   <h2 class="text-center" style="font-family:sans-serif;">GR-Record</h2>
    <hr/>
   <div class="addgr text-right" style="margin-bottom: -50px;">
    <button class="btn btn-dark" type="submit"><a href="{% url 'addgrregister' %}">Add-GR Register</a></button>
  </div>
    <form class="form-inline my-2 my-lg-2">
        <input 
        class="form-control mr-sm-2" 
        type="search" 
        placeholder="Search" 
        aria-label="Search"
        name="search"
        value="{{search_term}}">
        <button class="btn btn-outline-dark my-2 my-sm-0" type="submit">Search</button>
      </form>
      <br/>
  <div class="table-responsive ">
  <table class="table table-hover table-dark table-bordered table-sm">
      <caption>List of GR-students</caption>
    <thead>
      <tr>
      <th>GR No</th>
      <th>First Name</th>
      <th>Last Name</th>
      <th>Date Of Birth</th>
      <th>Class Of Admission</th>
      <th>Section Of Admission</th>
      <th>Gender</th>
      <th>Current Class</th>
      <th>Current Section</th>
      <th>Address</th>
      <th>Area Code</th>
      <th>Status</th>
      <th>Action</th>
      </tr>
    </thead>
    <tbody>
      {% for gr in gr %}
      <tr>
        <td>{{gr.gr_no}}</td>
        <td>{{gr.first_name}}</td>
        <td>{{gr.last_name}}</td>
        <td>{{gr.date_birth}}</td>
        <td>{{gr.classes_A}}</td>
        <td>{{gr.sections_A}}</td>
        <td>{{gr.gender}}</td>
        <td>{{gr.classes_C}}</td>
        <td>{{gr.sections_C}}</td>
        <td>{{gr.address}}</td>
        <td>{{gr.area_code}}</td>
        <td>{{gr.status}}</td>
        <td>
            <a href="{% url 'editgr' grno.pk %}" class="btn btn-warning btn-sm" role="button"> Edit</a><br/>
            <a href="#" class="btn btn-danger btn-sm" role="button"> Delete</a>
        </td>
      </tr>
      {%endfor%}
    </tbody>
  </table>
</div>
      <br/><br/>
</div>

请给我有关此问题的任何建议,或告诉我什么是正确的方法

0 个答案:

没有答案