2014-10-02 61 views
18

我在版本1.7上觀察過這種行爲,但在以前的版本中沒有使用南遷移。爲什麼Django 1.7會在字段選擇的變化中創建遷移?

例如。

class RedemptionCode(models.Model): 
    EXPIRE_OPTIONS = (
     ('1 week', '1 Week'), 
    ) 

    expire_option = models.CharField(max_length=255, choices=EXPIRE_OPTIONS) 

我加入的時候更多的選擇:

EXPIRE_OPTIONS = (
    ('1 week', '1 Week'), 
    ('2 weeks', '2 Weeks'), 
    ('1 month', '1 Month'), 
    ('1 day', '1 Day'), 
) 

和運行makemigrations,它創造了它遷移,從south背景我想這應該說沒有檢測到變化,因爲它不影響數據庫來架構。我不知道它提供什麼樣的目的:

class Migration(migrations.Migration): 

    dependencies = [ 
     ('credits', '0001_initial'), 
    ] 

    operations = [ 
     migrations.AlterField(
      model_name='redemptioncode', 
      name='expire_option', 
      field=models.CharField(max_length=255, choices=[('1 week', '1 Week'), ('2 weeks', '2 Weeks'), ('1 month', '1 Month'), ('1 day', '1 Day')]), 
     ), 
    ] 
+0

,因爲我有一對夫婦的上票,在我看來,這是沒有記錄,所以我創造了一票的https:/ /code.djangoproject.com/ticket/23586 – 2014-10-02 22:06:19

+1

看看我的答案類似的問題 http://stackoverflow.com/a/29233569/3025188 乾杯! – user3025188 2015-03-28 11:23:58

回答