2015-01-20 20 views
6

Bir uygulamadan diğerine birkaç model taşımak zorunda kaldım ve bu cevabın yönergelerini https://stackoverflow.com/a/26472482/188614 izledim.
Temel olarak, python manage.py makemigrations tarafından oluşturulan CreateModel geçişlerini kullandım, state_operations içine sardım ve 'db_table' meta seçeneğini eski tablonun adıyla ekledim.
Her şey yolunda gidiyor, new_app modellerinde eski tablolar kullanılıyor.
Ama python manage.py makemigrations new_app çalıştırırsanız böyle None olarak yeniden adlandırılması her tablo için bir AlterModelTable göç ​​oluşturur:Django 1.7 makemigrations tabloları hiçbiri olarak değiştirmiyor

migrations.AlterModelTable(
    name='cidade', 
    table=None, 
), 

bu bir hata, veya beklenen davranış mı?

cevap

5

Sadece bu sorunu kendim yaşadım.

aşağıdaki edildi cevap new_app yılında göç bu içerir:

options={ 
    'db_table': 'newapp_themodel', 
}, 

Bu seçenekler dict modelinize Meta sınıfı tarafından ayarlanan değerleri yansıtmalıdır. Benim durumumda Meta'da db_table ayarlamıyordum, ancak seçenekler kodunu körü körüne kopyalamıştım. Eğer Meta yılında ayarlayın yoksa veya Meta ayarlanan değerle aynı olacak eğer

Sen db_table değerini kaldırmak için ya newapp için göç seçenekleri güncellemeniz gerekir.

İlgili konular