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 комментариев:

EKryukov комментирует...

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

Ivan Markeev комментирует...

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

Vii комментирует...

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

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

Ivan Markeev комментирует...

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

Ivan Markeev комментирует...

Оказывается лучше вот так:

from south.modelsinspector import add_introspection_rules

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