Mysql
 sql >> Database >  >> RDS >> Mysql

Django crea automaticamente chiavi primarie per le tabelle di database esistenti

Dalla documentazione di Django:questa funzione è intesa come una scorciatoia, non come generazione del modello definitivo. Vedere la documentazione di inspectdb per ulteriori informazioni. (Riferimento:https://docs.djangoproject.com/en/1.8 /howto/database-legacy/ )

Avrai bisogno di ripulire manualmente i modelli ed eseguire la migrazione. La riga che dovrai aggiungere per aggiungere il campo "id" è:

id = models.IntegerField(primary_key=True)

Avvertimento:creerei sicuramente una copia del database con cui giocare, piuttosto che l'originale. Questo probabilmente richiederà alcuni tentativi ed errori per correggere. Dopo che sei assolutamente sicuro di averlo corretto, puoi modificare Managed=True , ma sii MOLTO attento!