2016-07-22 33 views
1

Ich habe gerade meine Bitnami Django VM von 1.8.9 bis 1.9.7 aktualisiert. Alles funktionierte reibungslos vor dem Upgrade, aber jetzt, wenn ich makemigrations betreibe ich die folgende Fehlermeldung erhalten:makemigrations scheitert mit django_enumfield in Django 1.9

TypeError: Couldn't reconstruct field role on rapid.GeoViewRole: __init__() takes at least 2 arguments (1 given) 

Hier sind die entsprechenden Klassen/Importe:

from django_enumfield import enum 

class Role(enum.Enum): 
    VIEWER = 0 
    EDITOR = 1 
    OWNER = 2 

    labels = { 
     VIEWER: 'Viewer', 
     EDITOR: 'Editor', 
     OWNER: 'Owner' 
    } 

class GeoViewRole(models.Model): 
    token = models.ForeignKey(ApiToken) 
    role = enum.EnumField(Role) 
    geo_view = models.ForeignKey(GeoView) 
    objects = models.GeoManager() 

Ich kann nicht erklären, warum ich würde diesen Fehler nach dem Upgrade erhalten.

+1

Was Version von 'django_enumfield' ist? Funktioniert es mit 'django_enumfield == 1.3b2'? –

+0

@VladimirDanilov Das Upgrade auf 1.3b2 scheint das Problem gelöst zu haben. – Ben

Antwort

1

Es war die Version von Django-Enumfield für mich. Ich hatte

django-enumfield==1.2.1 

Migrations gearbeitet, nachdem ich es entfernt und installiert

django_enumfield==1.3b2