2012-04-13 23 views
1

我在現有的Django應用上安裝了南端。這個Django應用程序也在Heroku上。無法在Heroku上遷移Django應用與南端

無需對模型的任何改變,我在本地完成下面的命令:

  • manage.py schemamigration app_name --initial
  • manage.py migrate --fake

然後我試圖推Heroku的主人,並遷移那裏。但我收到以下內容:

Running migrations for app_name: 
- Nothing to migrate. 
    - Loading initial data for notecards. 
No fixtures found 

我得到同樣的消息,如果我嘗試假Heroku的遷移。

我想,這可能是確定的,因爲技術上沒有什麼可以遷移,因爲數據庫保持不變。

所以我做了一個小改動的車型之一,並做了以下內容:

  • manage.py schemamigration app_name --auto
  • manage.py migrate

我再攀新高的Heroku並試圖遷移那裏,我仍然收到以下內容:

Running migrations for app_name: 
- Nothing to migrate. 
    - Loading initial data for notecards. 
No fixtures found 

任何幫助我做錯的事情都會很棒。謝謝。

+0

我的遷移文件夾現在有兩個條目0001(這是init)和0002.然而,這個問題發生在我進行第二次遷移之前。 – 2012-04-13 15:52:30

+1

你確定你已經進行了新的遷移嗎?檢查Heroku上的遷移文件夾並確保實際上尚未在那裏運行遷移。 – 2012-04-13 16:27:04

+0

這使我走上正軌。我需要遞歸刪除先前的遷移,然後從新的遷移開始。 THanks – 2012-04-13 17:14:48

回答

-1

對於遇到此問題的其他人,以及我自己的參考。感謝Chris Pratt讓我走上正軌。

本地:

這是通過解決

遞歸刪除任何舊的遷移git rm -r migrations

沖洗舊數據庫(這將刪除所有數據,但對我來說這wasnt問題)manage.py flush

刪除app文件夾中的migrations文件夾

run initial schemamigrati在manage.py schemamigration --initial

運行假遷移manage.py migrate --fake

推Heroku的主

在Heroku:

遷移heroku run python manage.py migrate app_name

然後,在本地,就可以運行遷移--auto,推到Heroku的,並運行遷移app_name

+0

這個答案似乎沒有用,除了幾乎無法理解。 – FRD 2013-06-07 07:16:53

+1

你不明白答案的哪一部分?它基本上是遞歸地移除遷移,然後創建一個新的遷移。它起作用,至少在寫作的時候,但它完全消除了遷移 - 也許這不是你想要的。也許你會更好地創建自己的問題並進行回答。 – 2013-06-07 18:50:38

+0

我知道這是前一陣子,但你有沒有找到一種方法來處理這個問題,而不需要加入數據庫?只是好奇,因爲我有這個相同的問題,而我只是核武本地數據庫,這「技術上」沒什麼大不了的,這只是一個麻煩。 – 2013-06-10 18:33:13