Devel.cz Lupa Měšec Podnikatel Root Zdroják.cz DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Názory k článku
Django: Autentizace a autorizace

yed_
yed_ (neregistrovaný) ---.net.upc.cz
9. 10. 2009 10:29 Nový

model uzivatelskeho profilu

celé vlákno

Nebylo by lepsi pouzit pro uzivatelsky profil dedicnost modelu? Mam s tim lepsi zkusenosti, nezli s vazbou pres OneToOneField(). S danym modelem se pak jednoduseji pracuje. Priklad:

from django.contrib­.auth.models import User
from django.contrib­.auth.models import UserManager

class Profile(AuthUser):
info = models.TextFi­eld(_(‚Informa­ce‘), blank=True)

objects = UserManager()

Pavel Dvořák
9. 10. 2009 11:57 Nový

Re: model uzivatelskeho profilu

celé vlákno

Je to také možné, ale tohle je doporučené řešení. Je to hlavně z toho důvodu, že request.user je objekt User, ne Profile, takže bychom museli přepisovat autentizační rozhraní.

Pavel Lang aura:96
19. 10. 2009 5:25 Nový

Re: model uzivatelskeho profilu

celé vlákno

V případě šikovného použití dědičnosti nikoliv. V čem mám v Djangu s dědičností modelů problém je vazba přez GenericForeignKey, tam mi to trochu drhlo, ale vyřešilo se to také docela snadno.
Je ale pravda, že zrovna uživatelský profil je radno dělat v Djangu tak jak v článku, v podstatě to už je „konvence“.

Honza Kral
Honza Kral (neregistrovaný) ---.net.upc.cz
12. 10. 2009 12:35 Nový

Validace password

celé vlákno

Uvedeny kus kodu vyhodi vyjimku pokud pro password1 neprojde validace – nebude naplnen v cleaned_data a dostanete KeyError.

Bylo by take pekne nepouzivat v prikladech (obzvlast pro zacatecniky) natvrdo zadane URL adresy, ale pouzit tag {% url %} a metodu reverse ve views.

ModelForm neni jen trida ke generovani formularu, obsahuje hlavne logiku, ktera umoznuje i praci s modely – napriklad neni nutne pracne konstruovat initial argument, ale lze do formulare rovnou predat instanci pres parametr instance. Zavolani .save() na tom formulari pak provede patricny update toho modelu aniz byste se museli starat o rucni pridelovani jednotlivych fieldu (bez predani instance do __init__ .save() vytvori novou instanci modelu).

Honza Kral
Honza Kral (neregistrovaný) ---.net.upc.cz
12. 10. 2009 12:37 Nový

Re: Validace password

celé vlákno

Pardon, prvni bod neplati, priklad je napsany spravne, moc se omlouvam, prekoukl jsem se.

Pavel Dvořák
12. 10. 2009 12:51 Nový

Re: Validace password

celé vlákno

Díky za připomínky. Napadlo mě, že bych poslední díl seriálu mohl věnovat tipům a trikům, jak si usnadnit práci. Rozhodně tam zahrnu i značku {% url %} a předávání modelu do formuláře a naopak.

kiot
kiot (neregistrovaný) 195.113.224.---
11. 11. 2009 16:27 Nový

Reset hesla

celé vlákno

Mozna byste mohl v dalsim dile udelat navod na rest hesla. Jedna se o lehky proces, ktery vsak neni nikde poradne popsan.

Pavel Dvořák
11. 11. 2009 16:37 Nový

Re: Reset hesla

celé vlákno

Tohle je naprosto jednoduché, stačí použít generický pohled password_reset.

Zasílat nově přidané příspěvky e-mailem