Reverse for xxx with no arguments not found错误原因定位

更改项目代码后,进入new_train_item.html时,出现了一个错误:Reverse for ‘train_type’ with no arguments not found. 1 pattern(s) tried: …
为什么会出现这样的错误?
先分析一下错误提示:不带参数的train_type逆解析时没有找到。就是说,你要逆解析一个地址,这个地址是不带参数的‘train_type’。
出现这样的问题提示,你首先要检查html页面的\代码部分,查看一下哪条超链接是指向train_type视图函数的。然后你转到views.py文件,查看一下train_type视图函数是不是在定义的时候,除了request,还有别的形参。例如,我的是:

def train_type(request,train_type_id):
    train_type = Train_Type.objects.get(id=train_type_id)
    train_items =
train_type.train_items_set.order_by('item_number')
    context = {'train_type':train_type,'train_items':train_items}
    return render(request,'train_plan/train_type.html',context)    

这说明你在HTML页面,定义超链接代码时,你必须传递一个值给形参train_type_id。



{{ train_type }}

当超链接代码中没有train_type.id这个值时,就会出现Reverse for ‘XXX’ with no arguments not found错误

你可能感兴趣的:(Python)