Я использую django-notification
для создания уведомлений. на основе его документации, которую я написал:
url(r'^inbox/notifications/', include(notifications.urls, namespace='notifications')),
в моем urls.py
. Я генерирую уведомление для тестирования, используя это в моем views.py:
guy = User.objects.get(username = 'SirSaleh')
notify.send(sender=User, recipient=guy, verb='you visted the site!')
и я могу легко получить количество непрочитанных уведомлений по этому URL:
http://127.0.0.1:8000/inbox/notifications/api/unread_count/
он возвращает {"unread_count": 1}
, как я хочу. но с /api/unread_list/
я не могу получить список уведомлений и получаю такую ошибку:
ValueError at /inbox/notifications/
invalid literal for int() with base 10: '<property object at 0x7fe1b56b6e08>'
Поскольку я новичок в использовании django-notifications
, я буду благодарен за любую помощь.
Полный TraceBack
Среда:
Метод запроса: GET URL-адрес запроса: http://127.0.0.1:8000/inbox/notifications/api/unread_list/
Версия Django: 2.0.2 Версия Python: 3.5.2 Установленные приложения: ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django .contrib.messages ',' django.contrib.staticfiles ',' django.contrib.sites ',' django.forms ',' rest_framework ',' allauth ',' allauth.account ',' allauth.socialaccount ',' guardian ',' axes ',' django_otp ',' django_otp.plugins.otp_static ',' django_otp.plugins.otp_totp ',' two_factor ',' invitations ',' avatar ',' imagekit ',' import_export ',' djmoney captcha, dal, dal_select2, widget_tweaks, braces, django_tables2, phonenumber_field, hitcount, el_pagination, maintenance_mode, notifications, mathfilters, myproject_web ',' Порядок ',' Фотогалерея ',' Поиск ',' Социальные сети ',' UserAccount ',' UserAuthentication ',' UserAuthorization ',' UserProfile '] Установленное промежуточное ПО: [' django.middleware.security.SecurityMiddleware ',' django .contrib.s essions.middleware.SessionMiddleware ',' django.middleware.locale.LocaleMiddleware ',' django.middleware.common.CommonMiddleware ',' django.middleware.csrf.CsrfViewMiddleware ',' django.contrib.auth.middleware. django.contrib.messages.middleware.MessageMiddleware ',' django.middleware.clickjacking.XFrameOptionsMiddleware ',' django_otp.middleware.OTPMiddleware ',' maintenance_mode.middleware.Main maintenanceModeMiddleware ']
Выслеживать:
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/core/handlers/exception.py" во внутреннем 35. response = get_response (запрос)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/core/handlers/base.py" в _get_response 128. response = self.process_exception_by_middleware (e, request)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/core/handlers/base.py" в _get_response 126. response = wrapped_callback (request, * callback_args, ** callback_kwargs)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/notifications/views.py" в live_unread_notification_list 164. если n.actor:
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/contrib/contenttypes/fields.py" в get 253. rel_obj = ct.get_object_for_this_type (pk = pk_val)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/contrib/contenttypes/models.py" в get_object_for_this_type 169. return self.model_class () ._ base_manager.using (self._state. db) .get (** kwargs)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/query.py" в get 394. clone = self.filter (* args, ** kwargs)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/query.py" в фильтре 836. return self._filter_or_exclude (False, * args, ** kwargs)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/query.py" в _filter_or_exclude 854. clone.query.add_q (Q (* args, ** kwargs) )
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/sql/query.py" в разделе add_q 1253., _ = self._add_q (q_object, self.used_aliases )
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/sql/query.py" в _add_q 1277. split_subq = split_subq,
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/sql/query.py" в build_filter 1215. condition = self.build_lookup (поиск, столбец, значение)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/sql/query.py" в build_lookup 1085. lookup = lookup_class (lhs, rhs)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/lookups.py" в init 18. self.rhs = self.get_prep_lookup ( )
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/lookups.py" в get_prep_lookup 68. return self.lhs.output_field.get_prep_value (self.rhs)
Файл "/home/saleh/Projects/myproject_web/lib/python3.5/site-packages/django/db/models/fields/ init .py" в get_prep_value 947. return int (value)
Тип исключения: ValueError в / inbox / notifications / api / unread_list / Exception Value: недопустимый литерал для int () с базой 10: ''
python3
,Django==2.0.2
иdjango-notifications-hq==1.4.0
@Selcuk - person SirSaleh   schedule 02.07.2018