没有名为django_filters

时间:2016-05-21 21:49:57

标签: python django filter django-filter django-filters

我是python的新手,也许这些问题对你们中的一些人来说很明显,但我到处寻找答案,我似乎无法找到它。

我正在尝试将“django-filter安装到我的网站,我能够成功地这样做。但是,当我将它添加到我的”已安装的应用程序“时,它会给我以下错误:”导入错误:否名为django_filters的模块“

根据我的研究,我认为它必须是兼容性问题,因此我将django降级为1.8.4,并将我的过滤器降级为0.11.0。

做pip冻结后> requirements.txt,似乎在requirements.txt中显示的一切都很好。我正在使用python 2.7。

我知道有一个类似的问题,如下所示: ImportError: No module named django_filters

但是这个线程的解决方案都没有奏效。

任何想法可能是什么问题?非常感谢提前。

 File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
ImportError: No module named django_filters
(bartering) localhost:src ayaspencer$ pip freeze
Django==1.8.4
django-crispy-forms==1.6.0
django-filter==0.11.0
django-localflavor==1.2
django-registration==2.0.4
django-registration-redux==1.4
httplib2==0.9.2
oauth2client==2.0.2
Pillow==3.2.0
pyasn1==0.1.9
pyasn1-modules==0.0.8
requests==2.9.1
rsa==3.4.2
six==1.10.0
South==1.0.2
stripe==1.32.1

这是我的INSTALLED_APPS

INSTALLED_APPS = (
    #django app
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    #third party apps
    'crispy_forms',
    'localflavor',
    'registration',
    'django_filters',

1 个答案:

答案 0 :(得分:3)

几乎可以肯定的是,您在与运行pip freeze的不同python环境中运行服务器。

执行以下操作以在命令行上调试默认环境:

pip --version
python --version
python -c "import sys; print(sys.path)"

然后将以下代码添加到settings.py并重新运行您的服务器,以获取有关您正在运行的环境的类似信息:

import sys
print(sys.version)
print(sys.path)

您会发现两个sys.path是不同的,您需要修改一些内容以确保它们相同。此外,如果版本不同,那么您的环境问题就更糟了!

作为一般性提示,如果你认真使用python,你需要学习如何使用virtual environments(它并不难),并养成使用它们的习惯时间!