You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django/Python中NoReverseMatch错误求助:新增数据后无法正常展示

Django新增资产后表格展示出现NoReverseMatch错误求助

我是Django和Python新手,开发资产管理功能时,想实现新增数据后在表格中展示,但出现了NoReverseMatch错误,自己排查不出代码问题,附上相关代码及错误截图,请求帮助解决。

错误截图:
错误截图

Urls.py

from django.urls import path, re_path
from django.conf import settings
from . import views
from django.conf.urls.static import static

urlpatterns =[
path('',views.index, name='index'),
re_path('<int:am_ast>', views.view_asset, name='view_asset'),
path('add/', views.add_asset, name='add_asset',) 
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) 

views.py

from django.http import HttpResponseRedirect
from django.shortcuts import render
from django.urls import reverse
from .models import asset
from .forms import assetform

# Create your views here.
def index(request):
    return render(request, 'assetmanagement/index.html', {
        'assets': asset.objects.all()
    })

def view_asset(request, am_ast):
    ast = asset.objects.get(pk=am_ast)
    return HttpResponseRedirect(reverse('index'))

def add_asset(request):
    if request.method == 'POST':
        form = assetform(request.POST)
        if form.is_valid():
            new_category = form.cleaned_data['category']
            new_am_ast = form.cleaned_data['am_ast']
            new_sn = form.cleaned_data['sn']
            new_desc = form.cleaned_data['desc']
            new_acq_date = form.cleaned_data['acq_date']
            new_iss_date = form.cleaned_data['iss_date']
            new_emp_name = form.cleaned_data['emp_name']
            new_emp_dept = form.cleaned_data['emp_dept']
            new_scrp_name = form.cleaned_data['scrp_name']
            new_scrp_date = form.cleaned_data['scrp_date']
            new_loc = form.cleaned_data['loc']
            new_stat = form.cleaned_data['stat']
            new_rmks = form.cleaned_data['rmks']
            # new_img = form.cleaned_data['img']

            new_asset = asset(
                category= new_category,
                am_ast = new_am_ast,
                sn = new_sn,
                desc = new_desc,
                acq_date = new_acq_date,
                iss_date = new_iss_date,
                emp_name = new_emp_name,
                emp_dept = new_emp_dept,
                scrp_name = new_scrp_name,
                scrp_date = new_scrp_date,
                loc = new_loc,
                stat = new_stat,
                rmks = new_rmks,
                # img = new_img,
            )

            new_asset.save()
            return render(request, 'assetmanagement/add.html',{
                'form': assetform(),
                'success': True
            })
    else:
        form = assetform()
    return render(request, 'assetmanagement/add.html', {
        'form': assetform()
    })

index.html

<button type='button' class="btn btn-success me-1" href="{% url 'view_asset' asset.am_ast %}" data-bs-toggle="modal" data-bs-target="#vwModal{{asset.am_ast}}">
    <i class="fa-regular fa-eye fa-lg"></i>
</button>

内容的提问来源于stack exchange,提问作者Kelvinpogs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 04:00:31