2016-08-03 3 views
1

ich den Fehler:Wie die lokale Datenbank auf Heroku mit neuen Tabellen migrieren?

Exception Value:  
no such table: hello_surname 

wenn ich versuche, einen Blick zu zeigen, dass die Nachnamen Modell

in meinem models.py greift

class Surname(models.Model): 
    created = models.DateTimeField('date created', auto_now_add=True) 
    name = models.CharField(max_length=35) 

Ich habe versucht, die Migrate laufen $ heroku run python manage.py migrate

ouput:

Running python manage.py migrate on ⬢ sleepy-fjord... up, run.7027 

Operations to perform: 
    Apply all migrations: sessions, auth, hello, contenttypes, admin 
Running migrations: 
    No migrations to apply. 
    Your models have changes that are not yet reflected in a migration, and so won't be applied. 
    Run 'manage.py makemigrations' to make new migrations, and then re-run 'manage.py migrate' to apply them. 

dann laufen i $ heroku run python manage.py makemigrations

Ausgang:

Running python manage.py makemigrations on ⬢ sleepy-fjord... up, run.8567 
Migrations for 'hello': 
    0002_surname.py: 
    - Create model Surname 

wenn ich die oben wandern laufen wieder, es gibt nur die gleiche Ausgabe wie wenn ich es das erste Mal lief. Scheint so, als ob ich hier einen Schritt verpasse, aber mit dem Output kann ich es nicht alleine herausfinden. Wer kennt keine Lösungen?

+0

./manage.py makemigrations myappname – e4c5

+0

Sie meinen also, wenn Sie '$ heroku ausführen python manage.py migrieren' nach '$ heroku python manage.py makemigrations ausführen, erhalten Sie immer noch ** Keine Migrationen zu Anwenden ** sowie ** Ihre Modelle haben Änderungen, die noch nicht in einer Migration berücksichtigt wurden und daher nicht angewendet werden. ** ?? Oder einfach die ** Keine Migrationen anwenden ** ?? –

Antwort

0

Sie müssen ausführen Migrationen ausführen lokal, die Ergebnisse festschreiben, dann migrieren auf Heroku ausführen.

+0

Entschuldigung, ich bin ein wenig neu in dem Konzept, wie würdest du es lokal ausführen? – hakonbogen

+1

Wenn ich nicht falsch liege, was @Daniel bedeutet zu sagen ist, dass Sie einfach 'python manage.py makemigrations' und dann' python manage.py migrieren 'auf Ihrem lokalen und nicht heroku. Dann musst du dich auf heroku festlegen, d. H. "Git push heroku master" und dann migrieren auf heroku. Ich bin ich richtig Daniel oder habe ich etwas vermisst? –

Verwandte Themen