2016-04-15 69 views
0

好吧所以我在django 1.8中有一些遷移問題,我需要通過每次手工刪除我的數據庫表來解決問題。我通過添加新的領域和運行Django遷移並不總是工作

python manage.py makemigrations 

python manage.py migrate 

它說沒有更改應用於改變我的表後,每一次 -

我的問題是下面。 (遷移文件夾爲空)

(它不是拿起模型文件我所做的更改)

在茶几老結構保持,當我測試它給我的錯誤。

如果我直接在數據庫中刪除表並重新啓動它,但它很煩人,因爲我必須每次都重新創建一個測試數據。

這是一個在遷移或只是我的錯誤?

例如,這是我的模型文件表,但它發生在其他表之前。

@with_author 
class BOM(models.Model): 
    name = models.CharField(max_length=200,null=True, blank=True) 
    description = models.TextField(null=True, blank=True) 
    product= models.ForeignKey(Product, on_delete=models.PROTECT) 
    material = models.OneToOneField(Material, related_name = 'material') 
    creation_time = models.DateTimeField(auto_now_add=True) 
    materialuom = models.CharField(max_length=1, 
           choices=UOM_CHOICES) 
    quantity = models.DecimalField(max_digits=19, decimal_places=10) 
    waste = models.DecimalField(null=True, blank=True,max_digits=19, decimal_places=10) 
    def __unicode__(self): 
     return u'%s %s' % (self.id, self.name) 
+0

問題出在您使用的'with_author'裝飾器上嗎? – Alasdair

+2

你嘗試過:'python manage.py makemigrations appname'? – ahmed

+0

@ahmed我嘗試使用應用程序名稱,它把它撿起來,但它創建了一個亂七八糟的表格,因爲表格已經存在,並且它在沒有在django migrate終端中編寫任何東西的情況下重新創建它。我的印象是遷移中的錯誤。 –

回答

1

好的,所以我得到了我的工作,感謝來自@ahmed的評論。 每次在做python manage.py makemigrations appname時,都必須鍵入appname.Without appname功能並不總是有效。

但是我相信在django1.8遷移過程中還存在問題。