django-profiletools

Скріншот програми:
django-profiletools
Дані програми:
Версія: 0.2
Дата завантаження: 20 Feb 15
Розробник: Daniel Greenfeld
Ліцензія: Безкоштовно
Популярність: 0

Rating: 4.0/5 (Total Votes: 1)

Django-profiletools є додаток Django, яка забезпечує кошти для моделей профілю в Django.
Установка
Отримати код:
пункт встановити Django-profiletools
Встановіть проміжне і context_processor у вашому settings.py:
TEMPLATE_CONTEXT_PROCESSORS = (
І NBSP; ...
І NBSP; 'profiletools.context_processors.fetch_profile',
)
MIDDLEWARE_CLASSES = (
...
"Profiletools.middleware.LazyProfileMiddleware ',
)
Крім того, в settings.py, встановіть AUTH_PROFILE_MODULE в свій профіль моделі:
AUTH_PROFILE_MODULE = "profiles.Profile"
Виходячи з цього, у вашому профілі модель повинна нагадувати щось на зразок:
# Profiles.models.Profile.py
від django.contrib.auth.models імпортувати
від django.db імпортних моделей
клас Profile (models.Model):
І NBSP; користувач = models.OneToOneField (Користувач)
І NBSP; Def __unicode __ (Я):
І NBSP; повернення self.user.username
Примітка: Якщо ви не використовуєте profiles.models.Profile, скажімо members.models.UserProfile йти вперед і змінити AUTH_PROFILE_MODULE в "members.UserProfile".
Використання
У шаблонах:
{{Request.my_profile}}
У ваших функціональних переглядів:
профіль = request.my_profile
У своїх поглядах на базі класів:
Профіль = self.request.my_profile
Зателефонуйте my_profile стільки разів, скільки ви хочете, це завантажує тільки один раз. Так що, якщо ви це називаєте 100 разів в цілях, SQL SELECT виконується тільки в перший раз. Якщо користувач не знайдений, то результат my_profile виклик його немає, що робить його легше обробляти шаблони, які повинні бути в змозі обробляти неавторизованих користувачам (наприклад, про сторінку).
Примітка: Якщо ви використовуєте приклад members.UserProfile, вам потрібно подзвонити, що при використанні request.my_userprofile.
Проблеми з Python "є" оцінка і "тип", побудований в
Якщо ви використовуєте це оцінка, перш ніж робити що-небудь ще з об'єктом my_profile, він буде вести себе в дещо несподіваним чином:
Завжди буде повертати помилковими. Наприклад:
>>> Печатки (request.my_profile НЕ None)
Помилковий
>>> Р = request.user.get_profile ()
>>> Печатки (request.my_profile р)
Помилковий
Крім того, тип вбудованого буде повертати об'єкт django.utils.functional.SimpleLazyObject:
>>> Печатки (тип)
<Клас "django.utils.functional.SimpleLazyObject '>
Майте на увазі, що поміщається у вартості my_profile не примірник або None об'єкт ModelClass, а django.utils.functional.SimpleLazyObject.
Як оцінити my_profile об'єкт
Використовуйте == оцінити об'єкт my_profile. Це змушує об'єкт бути оцінені і не повернеться розчарування помилкові спрацьовування.
Натхнення
Відкладеної завантаження профілів був натхненний, а неймовірною Ноа Кантровіца

Особливості :.

  • Лінивий завантаження Вашого перевірку автентичності запис профілю по життю об'єкта запиту. Це означає, що в коді Python і шаблонів.
  • Назвіть профіль моделі, що ви хочете в settings.AUTH_PROFILE_MODULE.

Вимоги

  • Python
  • Django

Інші програми розробника Daniel Greenfeld

django-mongonaut
django-mongonaut

20 Feb 15

django-uni-form
django-uni-form

11 May 15

django-profiletools

Коментар не знайдено
додати коментар
Включіть картинки!