【发布时间】:2020-08-02 14:20:27
【问题描述】:
我已经为类别列表创建了一个函数。如果 URL 为 '/admin/category/list/' 但模板扩展模板不显示为 '/admin/category/' 则成功呈现,仅显示基本模板。 这是views.py中的函数:
def categoryList(request):
q_name = request.GET.get('query','')
c_name = request.GET.get('select_category','')
hasform = request.GET.get('type','')
if q_name:
data = Category.objects.filter(Q(name__contains=q_name))
elif hasform:
frmid =[]
forms = FormModel.objects.all()
for form in forms:
frmid.append(form.category_id)
data = Category.objects.filter(id__in=frmid,parent_id__isnull=True)
print(data)
else:
data = Category.objects.filter(parent_id__isnull=True)
if c_name:
c_name = int(c_name)
data = Category.objects.filter(id=c_name)
paginator = Paginator(data, 10)
page = request.GET.get('page', 1)
try:
data = paginator.page(page)
except PageNotAnInteger:
data = paginator.page(1)
except EmptyPage:
data = paginator.page(paginator.num_pages)
all_category = Category.objects.filter(parent_id=None).order_by("name")
return render(request,'admin/category/categorylist.html',{'categories':data,
'q_name' : q_name,'all_category':all_category,'c_name':c_name})
这里是 urls.py:
from django.urls import path
from category import views
app_name = "category"
urlpatterns = [
path('list/',views.categoryList,name="categorylist"),
]
【问题讨论】:
-
您没有为
/admin/category/定义URL 路径,只有/admin/category/list/的模式。如果您想要前者的视图,则需要在您的urlpatterns中调用path并使用"/"指向适当的视图。 -
我认为模板有问题而不是视图,请您添加模板
-
@wmorrell 项目 urls.py 中定义的 url 路径
-
@AjayKhrolia 没有。您为
/admin/category/list/定义了一个路径。您确实没有为/admin/category/定义了路径。如果您尝试访问未定义的 URL,您将不会得到任何结果。
标签: python django python-3.x django-templates django-urls