2016-08-27 1 views
0

Я пытаюсь с помощью Django-простой история плагина с Джанго версией 1.10Джанго простой история плагин: визуализации() получил неожиданный аргумент ключевого слова 'словарь'

Согласно документации:

  1. Installed плагин с помощью следующей команды:

    pip install django-simple-history 
    
  2. Добавлено simple_history в INSTALLED_APPS

    INSTALLED_APPS = [ 
        ... 
        'simple_history', 
    ] 
    
  3. Чтобы отслеживать историю модели, создал экземпляр simple_history.models.HistoricalRecords на модели:

    class ModelClass(models.Model): 
        name1 = models.CharField(max_length=300) 
        name2 = models.CharField(max_length=300) 
        name3 = models.CharField(max_length=300) 
        history = HistoricalRecords(table_name='sampls_modelclass_history') 
        class Meta: 
         db_table = "sample_modelclass" 
    
  4. Чтобы разрешить просмотр предыдущих версий модели на сайте администратора Django, унаследованные от simple_history .admin.SimpleHistoryAdmin класс при регистрации модели с сайтом администратора:

    from django.contrib import admin 
    from simple_history.admin import SimpleHistoryAdmin 
    from .models import ModelClass 
    admin.site.register(ModelClass, SimpleHistoryAdmin) 
    
  5. когда я пытаюсь ввести «История» на конкретном экземпляре ModelClass в админ Я Г.Е. следующее к рабам исключения:

    TypeError: render() got an unexpected keyword argument 'dictionary' 
    

Traceback:

Environment: 
Request Method: GET 
Request URL: http://127.0.0.1:8000/admin/org/modelclass/1/history/ 
Django Version: 1.10 
Python Version: 2.7.11 
Installed Applications: 
['etc', 
'org', 
'django.contrib.admin', 
'django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.messages', 
'django.contrib.staticfiles', 
'simple_history'] 
Installed Middleware: 
['django.middleware.security.SecurityMiddleware', 
'django.contrib.sessions.middleware.SessionMiddleware', 
'django.middleware.common.CommonMiddleware', 
'django.middleware.csrf.CsrfViewMiddleware', 
'django.contrib.auth.middleware.AuthenticationMiddleware', 
'django.contrib.messages.middleware.MessageMiddleware', 
'django.middleware.clickjacking.XFrameOptionsMiddleware'] 
**Traceback:** 
File "C:\Python27\lib\site-packages\django\core\handlers\exception.py" in inner 
    39.    response = get_response(request) 
File "C:\Python27\lib\site-packages\django\core\handlers\base.py" in _get_response 
    187.     response = self.process_exception_by_middleware(e, request) 
File "C:\Python27\lib\site-packages\django\core\handlers\base.py" in _get_response 
    185.     response = wrapped_callback(request, *callback_args, **callback_kwargs) 
File "C:\Python27\lib\site-packages\django\contrib\admin\options.py" in wrapper 
    544.     return self.admin_site.admin_view(view)(*args, **kwargs) 
File "C:\Python27\lib\site-packages\django\utils\decorators.py" in _wrapped_view 
    149.      response = view_func(request, *args, **kwargs) 
File "C:\Python27\lib\site-packages\django\views\decorators\cache.py" in _wrapped_view_func 
    57.   response = view_func(request, *args, **kwargs) 
File "C:\Python27\lib\site-packages\django\contrib\admin\sites.py" in inner 
    211.    return view(request, *args, **kwargs) 
File "C:\Python27\lib\site-packages\simple_history\admin.py" in history_view 
    79.      dictionary=context, current_app=request.current_app) 
Exception Type: TypeError at /admin/org/modelclass/1/history/ 
Exception Value: render() got an unexpected keyword argument 'dictionary' 

Пожалуйста посоветуйте разрешение!

ответ

0

Этот аргумент был удален в Django 1.10. Пакет, который вы используете, кажется, не совместим с этой версией.

+0

Спасибо, много! В django docs я нашел следующее: Изменено в Django 1.8: Аргумент контекста, который назывался словарем. Это имя устарело в Django 1.8 и будет удалено в Django 1.10. Я поднял связанную проблему в списке проблем django-simple-history. –

Смежные вопросы