Python 属性错误:模块';django.contrib.postgres.fields';没有属性';JSONField';
从GitHub repo安装项目并最终收到以下错误Python 属性错误:模块';django.contrib.postgres.fields';没有属性';JSONField';,python,django,python-2.7,postgresql,django-rest-framework,Python,Django,Python 2.7,Postgresql,Django Rest Framework,从GitHub repo安装项目并最终收到以下错误 File "/Users/TheKotik/closer/blog/models.py", line 5, in <module> from rest_framework import serializers File "/Users/TheKotik/closer/denv/lib/python3.5/site-packages/rest_framework/serializers.py", line 1534, i
File "/Users/TheKotik/closer/blog/models.py", line 5, in <module>
from rest_framework import serializers
File "/Users/TheKotik/closer/denv/lib/python3.5/site-packages/rest_framework/serializers.py", line 1534, in <module>
ModelSerializer.serializer_field_mapping[postgres_fields.JSONField] = JSONField
AttributeError: module 'django.contrib.postgres.fields' has no attribute 'JSONField'
文件“/Users/TheKotik/closer/blog/models.py”,第5行,在
从rest_框架导入序列化程序
文件“/Users/TheKotik/closer/denv/lib/python3.5/site packages/rest_framework/serializers.py”,第1534行,在
ModelSerializer.serializer\u field\u映射[postgres\u fields.JSONField]=JSONField
AttributeError:模块“django.contrib.postgres.fields”没有属性“JSONField”
我不知道这和什么有关。请帮忙
整个回溯:
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/Users/TheKotik/closer/denv/lib/python3.5/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
utility.execute()
File "/Users/TheKotik/closer/denv/lib/python3.5/site-packages/django/core/management/__init__.py", line 312, in execute
django.setup()
File "/Users/TheKotik/closer/denv/lib/python3.5/site-packages/django/__init__.py", line 18, in setup
apps.populate(settings.INSTALLED_APPS)
File "/Users/TheKotik/closer/denv/lib/python3.5/site-packages/django/apps/registry.py", line 108, in populate
app_config.import_models(all_models)
File "/Users/TheKotik/closer/denv/lib/python3.5/site-packages/django/apps/config.py", line 198, in import_models
self.models_module = import_module(models_module_name)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 986, in _gcd_import
File "<frozen importlib._bootstrap>", line 969, in _find_and_load
File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 673, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 665, in exec_module
File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
File "/Users/TheKotik/closer/blog/models.py", line 5, in <module>
from rest_framework import serializers
File "/Users/TheKotik/closer/denv/lib/python3.5/site-packages/rest_framework/serializers.py", line 1534, in <module>
ModelSerializer.serializer_field_mapping[postgres_fields.JSONField] = JSONField
AttributeError: module 'django.contrib.postgres.fields' has no attribute 'JSONField'
文件“manage.py”,第10行,在
从命令行(sys.argv)执行命令
文件“/Users/TheKotik/closer/denv/lib/python3.5/site packages/django/core/management/_init__.py”,第338行,从命令行执行
utility.execute()
文件“/Users/TheKotik/closer/denv/lib/python3.5/site packages/django/core/management/_init__.py”,第312行,在execute中
django.setup()
文件“/Users/TheKotik/closer/denv/lib/python3.5/site packages/django/_init__.py”,第18行,在安装程序中
应用程序。填充(设置。已安装的应用程序)
文件“/Users/TheKotik/closer/denv/lib/python3.5/site packages/django/apps/registry.py”,第108行,填充
app_config.import_models(所有_models)
导入模型中的文件“/Users/TheKotik/closer/denv/lib/python3.5/site packages/django/apps/config.py”,第198行
self.models\u module=导入模块(models\u module\u name)
文件“/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/importlib/\uuuu init\uuuuu.py”,第126行,在导入模块中
return _bootstrap._gcd_import(名称[级别:],包,级别)
文件“”,第986行,在_gcd_import中
文件“”,第969行,在“查找”和“加载”中
文件“”,第958行,在“查找”和“加载”中解锁
文件“”,第673行,在“加载”中
exec_模块中第665行的文件“”
文件“”,第222行,在已删除帧的调用中
文件“/Users/TheKotik/closer/blog/models.py”,第5行,在
从rest_框架导入序列化程序
文件“/Users/TheKotik/closer/denv/lib/python3.5/site packages/rest_framework/serializers.py”,第1534行,在
ModelSerializer.serializer\u field\u映射[postgres\u fields.JSONField]=JSONField
AttributeError:模块“django.contrib.postgres.fields”没有属性“JSONField”
您的Django版本太低JSONField
您的Django版本太低JSONField
是在Django 1.9()中添加的,因此您需要升级才能使用JSONField
将您使用的版本与github版本进行比较,并告诉我^^JSONField是在Django 1.9中引入的,如果您使用的版本低于此版本,您不会拥有它。@wpercy django版本是1.8将您正在使用的版本与github版本进行比较,并告诉我^^JSONField是在django 1.9中引入的,如果您使用的版本少于此版本,您将不会拥有它。@wpercy django版本是1.8,我需要在生产中更新项目,所以我也必须在那里更新django版本?如果您想使用JSONField
,就无法继续使用1.8。它在1.9之前根本不存在。如果您的项目有一个requirements.txt文件,您应该能够更新其中的版本号。我需要在生产中更新项目,所以我也必须在那里更新django版本?如果您想使用JSONField
,就无法继续使用1.8。它在1.9之前根本不存在。如果您的项目有一个requirements.txt文件,您应该能够更新其中的版本号。