django-profiletools

Software screenshot:
django-profiletools
Podrobnosti Software:
Verze: 0.2
Datum uploadu: 20 Feb 15
Vývojka: Daniel Greenfeld
Licence: Volný
Popularita: 17

Rating: 4.0/5 (Total Votes: 1)

Django-profiletools je aplikace, Django, který poskytuje nástroje pro profilové modely v Django.
Instalace
Získat kód:
Pip nainstalovat Django-profiletools
Nainstalujte middleware a context_processor ve vašem settings.py:
TEMPLATE_CONTEXT_PROCESSORS = (
& Nbsp; ...
& Nbsp; "profiletools.context_processors.fetch_profile"
)
MIDDLEWARE_CLASSES = (
...
"Profiletools.middleware.LazyProfileMiddleware ',
)
Také v settings.py, nastavte AUTH_PROFILE_MODULE k vašemu modelu profilu:
AUTH_PROFILE_MODULE = "profiles.Profile"
Na základě toho by měl váš model profil vypadat něco jako:
# Profiles.models.Profile.py
od django.contrib.auth.models dovozu uživatele
od django.db modelů dovozních
třída Profile (models.Model):
& Nbsp; user = models.OneToOneField (Uživatel)
& Nbsp; def __unicode __ (self):
& Nbsp; návrat self.user.username
Poznámka: Pokud nechcete použít profiles.models.Profile, říkají members.models.UserProfile jděte do toho a změnit AUTH_PROFILE_MODULE na "members.UserProfile".
Použít
Ve vašich šablon:
{{}} Request.my_profile
Ve svých funkčních zobrazení:
profil = request.my_profile
Ve vašich názorů třídně založené na:
profile = self.request.my_profile
Zavolejte my_profile tolikrát, kolikrát chcete, je jen jednou zatížení. Takže pokud jste to nazýváte 100 krát v pohledu, SELECT SQL se provádí pouze při prvním. Není-li nalezen žádný uživatel pak výsledek my_profile hovor je None, což usnadňuje manipulaci šablony, které musí být schopen zvládnout neověřených uživatelů (podobně jako o straně).
Poznámka: Používáte-li příklad members.UserProfile, budete muset zavolat, že pomocí request.my_userprofile.
Problémy s Python "je" hodnocení a "typ" vestavěný
Použijete-li je zhodnocení, než dělat něco jiného s my_profile objektu, bude chovat poněkud neočekávaným způsobem:
Vždy vrátí false. Například:
>>> Print (request.my_profile je None)
Falešný
>>> P = request.user.get_profile ()
>>> Print (request.my_profile je p)
Falešný
Také typ vestavěný vrátí django.utils.functional.SimpleLazyObject objektu:
>>> Print (typ)

Mějte na paměti, co je umístěna v hodnotě my_profile není ModelClass instance nebo žádný objekt, ale spíše django.utils.functional.SimpleLazyObject.
Jak hodnotit my_profile objekt
== Použít k vyhodnocení my_profile objekt. To přinutí objekt, který bude vyhodnocen a už se nevrátí frustrující falešně pozitivní.
Inspirace
Líný zatížení profilů byl inspirován spíše neuvěřitelnou Noah Kantrowitz

Vlastnosti :.

  • Lazy zatížení vašeho ověřeného profilu rekord přes požadavek objektu života. To znamená, že v Pythonu a šablon.
  • Pojmenujte svůj profil modelu, co chcete v settings.AUTH_PROFILE_MODULE.

Požadavky na :

  • Python
  • Django

Ostatní software developer Daniel Greenfeld

django-uni-form
django-uni-form

11 May 15

django-tagging-ext
django-tagging-ext

12 May 15

django-mongonaut
django-mongonaut

20 Feb 15

Komentáře k django-profiletools

Komentáře nebyl nalezen
Přidat komentář
Zapnout obrázky!