2016-09-13 76 views
1

我在models.py中添加了一些表格模型,第一次運行該應用程序,然後運行python manage.py makemigrations後跟python manage.py migrate。這工作得很好,但添加兩個表後,它不再工作。Django MakeMigrations在添加新表格後無法在版本1.10中工作

它創建遷移爲所作的更改,但是當我運行python manage.py migrate什麼也沒有發生。我的新表不會添加到數據庫中。

我所做的事情:

  1. 刪除所有文件遷移文件夾,然後運行之後python manage.py migratepython manage.py makemigrations但新表不會仍沒有得到添加到即使新錶款展現數據庫在創建的遷移中,即0001_initial.py
  2. 刪除數據庫,然後按照上面的步驟1,但它仍然沒有解決我的問題。只有第一組表被創建。
  3. 嘗試python manage.py makemigrations app_name但它仍然沒有幫助。
+0

您的遷移中是否還有__init__.py? –

+0

我們可以看到'models.py'的相關部分嗎? –

+0

@KeithBailey是的,我願意。但是我也刪除了它,但是當我運行'python manage.py makemigrations app_name'時,它被重新創建了。 – Yax

回答

-1

你可以嘗試:

  1. 在Django的遷移表中刪除所有內容。
  2. 刪除migrations文件夾中的所有文件,然後像上面說的那樣運行python manage.py makemigrations和python manage.py migrate。

如果這不起作用,請嘗試:

  1. 在Django的遷移表中刪除所有內容。
  2. 刪除migrations文件夾中的所有文件,使用舊的model.py運行python manage.py makemigrations,然後執行python manage.py migrate。
  3. 添加新模型,運行python manage.py makemigrations,然後再執行python manage.py再次遷移。
+1

這並沒有解決我的問題。 – Yax

1

我遇到了之前這個問題,並發現,以這種方式特定的表運行manage.py工作:

python manage.py schemamigration mytablename --auto 
python manage.py migrate 

另外,還要確保你的新表位於settings.pyINSTALLED_APPS下。

+0

我在運行第一行時出錯。 *未知的命令:schemamigration * – Yax

+0

我有一個錯字。 'schemamigration',而不是'schemamigraton'。 –

+0

不要忘記前面的'manage.py'。 –

0

你可以發佈你的模型?

你是否以任何方式編輯manage.py?

嘗試在確認模型有效後再次刪除遷移和數據庫,然後運行manage.py makemigrations appname,然後運行manage.py migrate。

相關問題