2016-01-25 4 views
0

Использование Django 1.8 с базой данных SQLite.
Я сделал изменения в models.py, которая состояла из ликвидации двух из четырех элементов из выбора поля и редактирование одного из двух оставшихся:Миграция Django 1.8 не повлияла

Первоначальная стоимость:

OPTION_INSPECTOR = (
    ('John Smith', 'John Smith'), 
    ('Taylor', 'Taylor'), 
    ('Hale', 'Hale'), 
    ('James', 'James'), 
) 

Новое значение:

OPTION_INSPECTOR = (
    ('John Smith', 'John Smith'), 
    ('Greg Taylor', 'Greg Taylor'), 
) 

Я побежал:

python manage.py makemigrations my_app

Я не видел ничего необычного, только изменения, которые я сделал, если я правильно помню. У меня нет фактического вывода.

Тогда я побежал:

python manage.py migrate my_app 

Опять же, я не помню ничего необычного. Но модель не изменила выбор в раскрывающемся меню на сайте администратора. Может ли кто-нибудь предложить способ сделать это изменение успешно?

Спасибо!

ответ

0

Я постоянно меняю свое приложение на основе отзывов от исследователей. У меня было много проблем, как то, что вы описываете. Я обнаружил, что есть много изменений, которые я могу внести в модели до полного разрыва приложения, и мне нужно вернуться и «переделать» его с новым файлом model.py, но в конечном итоге это то, что мне пришлось делать. Тем временем (до того, как я переделаю приложение), я вношу изменения в model.py, затем запускаю makemigrations и затем переношу. Я смотрю и вижу, что такое ошибки, и я делаю изменения, чтобы исправить их непосредственно в базе данных (в моем случае, MySQL). Как правило, я должен делать это, чтобы добавлять или изменять поля. Затем я перезапущу миграцию make и миграцию, и я получаю предупреждения о повторяющихся полях, но приложение продолжает работать. Как я уже сказал, в конце концов, мне нужно переделать приложение со свежим файлом model.py, чтобы избавиться от всех предупреждений.

 Смежные вопросы

  • Нет связанных вопросов^_^