|
5鱼币
views文件
from app.cs import Cs
def cs(request):
Cs(request,ss)
return render(request, 'hrr.html', {'deat': ss})
cs文件
from django.db.models import Q
class Cs(object):
def __init__(self,request,pagesize=17):
self.n = request.GET.get('q')
if self.n:
self.ss = models.Userinfo.objects.filter(
Q(id__icontains=n) |
Q(name__icontains=n) |
Q(password__icontains=n) |
Q(age__icontains=n) |
Q(daa__icontains=n)
)
报错信息
File "D:\软件\djangoProject\app\views.py", line 130, in cs
return render(request, 'hrr.html', {'deat': ss})
NameError: name 'ss' is not defined
[05/May/2023 12:22:06] "GET /cs/ HTTP/1.1" 500 68383
根据您的代码和错误信息,问题出在 views.py 文件中的 cs 函数。在 cs 函数中,您尝试访问未定义的变量 ss 。要解决这个问题,您需要在 Cs 类的 __init__ 方法中返回 ss ,并在 cs 函数中接收它。
首先,修改 cs 文件中的 Cs 类,将 ss 作为属性存储:
from django.db.models import Q
from app import models
class Cs(object):
def __init__(self, request, pagesize=17):
self.n = request.GET.get('q')
self.ss = []
if self.n:
self.ss = models.Userinfo.objects.filter(
Q(id__icontains=self.n) |
Q(name__icontains=self.n) |
Q(password__icontains=self.n) |
Q(age__icontains=self.n) |
Q(daa__icontains=self.n)
)
然后,修改 views.py 文件中的 cs 函数,将 Cs 类的实例化后的对象赋值给一个变量,并将 ss 属性传递给 render 函数:
from app.cs import Cs
def cs(request):
cs_instance = Cs(request)
return render(request, 'hrr.html', {'deat': cs_instance.ss})
现在,错误应该已经解决。这将允许您在 hrr.html 模板中使用 deat 变量。
|
最佳答案
查看完整内容
根据您的代码和错误信息,问题出在 views.py 文件中的 cs 函数。在 cs 函数中,您尝试访问未定义的变量 ss 。要解决这个问题,您需要在 Cs 类的 __init__ 方法中返回 ss ,并在 cs 函数中接收它。
首先,修改 cs 文件中的 Cs 类,将 ss 作为属性存储:
然后,修改 views.py 文件中的 cs 函数,将 Cs 类的实例化后的对象赋值给一个变量,并将 ss 属性传递给 render 函数:
现在,错 ...
|