Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Django erstellt automatisch Primärschlüssel für vorhandene Datenbanktabellen

Aus der Django-Dokumentation:Diese Funktion ist als Abkürzung gedacht, nicht als endgültige Modellgenerierung. Weitere Informationen finden Sie in der Dokumentation von inspectdb. (Referenz:https://docs.djangoproject.com/en/1.8 /howto/legacy-databases/ )

Sie müssen die Modelle manuell bereinigen und migrieren. Die Zeile, die Sie hinzufügen müssen, um das "id"-Feld hinzuzufügen, lautet:

id = models.IntegerField(primary_key=True)

Warnung:Ich würde auf jeden Fall eine Kopie der Datenbank erstellen, um damit zu spielen, und nicht das Original. Dies wird wahrscheinlich einige Versuche und Irrtümer erfordern, um es richtig zu machen. Wenn Sie absolut sicher sind, dass Sie es richtig gemacht haben, können Sie Managed=True ändern , aber SEHR sein Vorsicht!