Я использую python 3.4, Django 1.7.1 (версия, рассмотренная в книге), Postgres 9.3 и моя IDE - Eclipse.Ошибка утверждения: Django-rest-Framework
Я изучаю книгу «Легкий Джанго - Эльман и Лавин», и я несколько дней простаивал в главах 4 и 5, где мы должны использовать остальные рамки и backbone.js. Смотри, например,
Lightweight Django - Chapters 4 and 5
Несколько дней назад я пытался кодировать по myseld, представленные в книге, а также проверки с примерами, представленными в приведенной выше ссылке. Однако, поскольку я не собирался идти вперед, я решил скопировать код, указанный в ссылке выше, и попытался запустить. Же ошибка возникла:
AssertionError at/
Relational field must provide a `queryset` argument, or set read_only=`True`.
Request Method: GET
Request URL: http://127.0.0.1:8000/
Django Version: 1.7.1
Exception Type: AssertionError
Exception Value:
Реляционного поле должно обеспечить queryset
аргумент, или установить read_only = True
.
Exception Location: /usr/local/lib/python3.4/dist-packages/rest_framework/relations.py in __init__, line 35
Python Executable: /usr/bin/python3
Python Version: 3.4.0
Python Path:
['/home/daniel/workspace/Scrum',
'/usr/lib/python3.4',
'/usr/lib/python3.4/plat-i386-linux-gnu',
'/usr/lib/python3.4/lib-dynload',
'/usr/local/lib/python3.4/dist-packages',
'/usr/lib/python3/dist-packages']
возникает внутри «relations.py, который относится к Джанго-покой рамке. Поскольку я использую точный код, приведенный в ссылке выше, предполагается, эта ошибка не имеет ошибки. На самом деле, только кусок кода, который я изменил был в settings.py (после того, как ошибка неоднократно случалось):
До:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'scrum',
}
}
Сейчас:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'scrum',
'USER': 'daniel',
'PASSWORD': '12345',
'HOST': '127.0.0.1',
'PORT': '5432',
}
Как вы можете видеть ниже, мой пользователь «Даниель» имеет следующие атрибуты:
Role name | Attributes | Member of | Description
-----------+------------------------------------------------+-----------+-------------
daniel | Superuser, Create DB | {} |
postgres | Superuser, Create role, Create DB, Replication | {} |
Наконец, кажется, что у меня нет никаких проблем с установкой psycopg2, так как я был способный создать «схватку», как показано ниже. Фактически, список баз данных моей системы:
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
scrum | daniel | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =Tc/daniel +
| | | | | daniel=CTc/daniel
template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
Может кто-нибудь помочь мне обнаружить проблему?
Спасибо !!! Я провел дни с этим !! – DanielTheRocketMan
Ссылка для serializers.py дает 404. Не могли бы вы обновить ссылку? Или укажите, какой файл serializers.py это? – tilaprimera
ну, они изменили свои репозитории. Но похоже, что это исправлено. https://github.com/lightweightdjango/examples/blob/chapter-6/scrum/board/serializers.py присвоено = serializers.SlugRelatedField ( slug_field = User.USERNAME_FIELD, required = False, queryset = User.objects. все()) – Aldarund