2016-08-27 3 views
0

Ich versuche django-simple-Geschichte Plugin mit django Version 1.10django einfache Geschichte Plugin: render() bekam ein unerwartetes Stichwort Argument 'Wörterbuch'

Laut Dokumentation mit:

  1. installiert Plugin verwendet den folgenden Befehl ein:

    pip install django-simple-history 
    
  2. Added simple_history zu INSTALLED_APPS

  3. Geschichte verfolgen für ein Modell, eine Instanz von simple_history.models.HistoricalRecords auf dem Modell erstellt:

    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. zu sehen vorherige Modellversionen auf der Django Admin-Seite zu erlauben, geerbt von der simple_history .admin.SimpleHistoryAdmin Klasse, wenn sie mit der Admin-Site Registrierung Modell:

    from django.contrib import admin 
    from simple_history.admin import SimpleHistoryAdmin 
    from .models import ModelClass 
    admin.site.register(ModelClass, SimpleHistoryAdmin) 
    
  5. wenn ich versuche geben ‚Geschichte‘ auf bestimmte Instanz ModelClass in Admin ich bin ge tting die folgende Ausnahme:

    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' 

Bitte teilen Auflösung!

Antwort

0

Dieses Argument wurde in Django 1.10 entfernt. Das Paket, das Sie verwenden, scheint mit dieser Version nicht kompatibel zu sein.

+0

Vielen Dank! Ich habe folgendes in django docs gefunden: Geändert in Django 1.8: Das Kontextargument wurde früher Dictionary genannt. Dieser Name ist in Django 1.8 veraltet und wird in Django 1.10 entfernt. Ich habe ein ähnliches Problem in der Django-Simple-History-Problemliste angesprochen. –

Verwandte Themen