gpt4 book ai didi

django - 名称错误 : name 'django_filters' is not defined

转载 作者:行者123 更新时间:2023-11-29 13:45:22 26 4
gpt4 key购买 nike

我正在尝试使用 Django 包:Django Filter我通过 Pip 安装它,确保我正在运行受支持的 Python(3.6) 和 Django(2.0) 版本,但是每当我尝试运行我的应用程序时,我都会收到以下错误:

class Table1(models.Model, django_filters.FilterSet):
NameError: name 'django_filters' is not defined

这是我的代码示例,为了保护我的工作,更改了名称。

模型.py:

from django.db import models
from django.contrib.postgres.search import SearchVectorField, SearchQuery
from django_filters import FilterSet



class Table1(models.Model, django_filters.FilterSet):
field1 = models.IntegerField(db_column='field1', blank=True, null=True)
field2 = models.NullBooleanField(db_column='field2')
field3= models.IntegerField(db_column='field3', blank=True, null=True)
field4= models.TextField(db_column='field4', blank=True, null=False, primary_key=True)

#def __str__(self):
# return self.sid

class Meta:
managed = False
db_table = 'Table1'
unique_together = (('field1', 'field2', 'field3', 'field4'),)

过滤器.py:

from .models import Table1
import django_filters

class Table1Filter(django_filters.FilterSet):
class Meta:
model = Table1
fields = ['field1', 'field2', 'field3', 'field4']

views.py:

from django.shortcuts import render 
from django_tables2 import RequestConfig
from django_tables2.export.export import TableExport
from django.contrib.postgres.search import SearchQuery, SearchRank
from django.template import RequestContext
from django.views.generic import *

from .models import *
from .tables import *
from .forms import *
from .filters import Table1Filter

def table1(request):
filter = Table1Filter(request.GET, queryset=Table1.objects.all())
return render(request, 'table1.html', {'filter': filter})

我手动编写了一些基本的过滤内容,然后意识到 Django Filter(s) 是一个东西,我认为我不应该重新发明轮子。这样做的目的是显示现有数据库中的数据并允许最终用户对其进行过滤。如果有更好的方法来做到这一点,我会洗耳恭听。感谢您的投入,并花时间阅读本文!

最佳答案

可能是因为您没有在 models.py 文件中导入 django_filters

import django_filters # instead of django_filters import FilterSet

或者反过来使用它。

关于django - 名称错误 : name 'django_filters' is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49309748/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com