17 мар. 2011 г.

South и django-profile

С января успел поучаствовать во множестве очень интересных django-проектов. Так вот, братцы, south - это теперь уже 100% стандарт. Если по какой-то причине вы его ещё не используете, срочно начинайте!
Ну я если уже начали, но не знаете как справиться с кастомными полями, для которых с версии south 0.6 нужно указывать свои валидаторы, в помощь вам правила игнора таких полей, описанные в документации. Например, поле country в обожаемом мной django-profile (в базовой модели профиля) не проходит schemamigration.
Используйте, и за одно поругайте меня, т.к. сдается  мне, что "^profile\.country" тут лишнее:

...
from userprofile.models import BaseProfile
from south.modelsinspector import add_ignored_fields


add_ignored_fields(["^profile\.country", "^userprofile\.countries\.CountryField"])


class Profile(BaseProfile):
    ...

5 комментариев:

  1. Интересно, а как в последнем South обстоят дела с поддержкой Oracle?

    ОтветитьУдалить
  2. К сожалению, те не многие приложения, которые у меня на oracle давно не обновлялись. То есть не было повода что-то менять.
    Думаю, все должно быть хорошо, south - довольно адекватен.

    ОтветитьУдалить
  3. > С января успел поучаствовать во множестве очень интересных django-проектов.

    Поделитесь опытом, как начать участвовать в «интересных django-проектах»? Хочется levelup'ов, а сам себе задач не напридываешь :_(

    ОтветитьУдалить
  4. Ну для начала нужно просто публично изъявить желание работать. Например, Студии Евгения Вакуленко в Тюмени прямо сейчас нужен джангист.

    ОтветитьУдалить
  5. Оказывается лучше вот так:

    from south.modelsinspector import add_introspection_rules

    add_introspection_rules([], ["^userprofile\.countries\.CountryField"])

    ОтветитьУдалить