2014-02-19 2 views
0

У меня есть проект, в котором мне нужно расширить пользователя django. То, как я это делал первоначально (без Mezzanine), заключалось в подклассе Model в пользовательский профиль, у которого было одно-одно поле для пользователя django. Кроме того, чтобы гарантировать, что у каждого пользователя всегда есть профиль, я создал в своем приложении приемник, который будет прослушивать пользовательский регистр. Всякий раз, когда она была вызвана, я бы просто сделать внутри приемника:Профили профилирования мезонина

user = kwargs.get('user') 
profile = Profile(user=user) 
profile.save() 

Теперь с мезонином установками существуют под названием AUTH_PROFILE_MODULE, которые я просто установить равный «myapp.Profile» и мезонин делает создание профиля для меня. Есть два вопроса, хотя:

а) На моем веб-приложение, каждый раз, когда я получить доступ к моей странице профиля, я получаю это:

myapp/venv/local/lib/python2.7/site-packages/mezzanine/accounts/templatetags/accounts_tags.py:70: DeprecationWarning: The use of AUTH_PROFILE_MODULE to define user profiles has been deprecated. 
    profile = user.get_profile() 

Действительно, AUTH_PROFILE_MODULE используется существовать в Джанго, но устарела. Что мне делать? Я игнорирую предупреждение, так как это Mezzanine, а не django, который использует AUTH_PROFILE_MODULE? Или у Mezzanine есть другой способ обработки профилей сейчас?

б) На моем приемнике, который у меня был без Мезонина, я сделал больше вещей. Например, я инициировал профили профиля в зависимости от некоторых окружений. Как я могу делать эти вещи с мезонином? Мой старый приемник больше не работает.

Спасибо за любую помощь

ответ

0

Этот вопрос немного старый, но я думаю, что вы можете спокойно игнорировать это предупреждение.

Вы должны иметь возможность выполнить дополнительную конфигурацию, подключившись к предварительному или постсодержащему сигналу для модели профиля.