Django - UserProfile property speichern
Verfasst: Samstag 17. März 2012, 20:01
Hallo,
ich habe folgenden Codeschnipsel gefunden, welcher bei mir allerdings nicht wirklich richtig klappt:
In den Einstellungen habe ich natürlich
hinzugefügt.
In einer View probiere ich dann folgendes:
Geändert wird some_field nur wenn ichs über get_profile() mache.
Über meine Property funkioniert es nicht (Egal ob das UserProfil in der Datenbank schon vorhanden ist oder nicht).
Hat jemand 'ne Idee wieso das ganze übers Property nicht funktioniert?
mfg Ahsous
ich habe folgenden Codeschnipsel gefunden, welcher bei mir allerdings nicht wirklich richtig klappt:
Code: Alles auswählen
class UserProfile(models.Model):
user = models.ForeignKey(User, unique = True)
some_field = models.CharField(max_length = 100, default = 'Test')
User.profile = property(lambda u: UserProfile.objects.get_or_create(user=u)[0])
Code: Alles auswählen
AUTH_PROFILE_MODULE = 'meinapp.UserProfile'
In einer View probiere ich dann folgendes:
Code: Alles auswählen
print(request.user.profile == request.user.get_profile())
print(request.user.profile.some_field, request.user.get_profile().some_field)
request.user.profile.some_field = '1'
print(request.user.profile.some_field, request.user.get_profile().some_field)
request.user.get_profile().some_field = '1'
print(request.user.profile.some_field, request.user.get_profile().some_field)
Über meine Property funkioniert es nicht (Egal ob das UserProfil in der Datenbank schon vorhanden ist oder nicht).
Hat jemand 'ne Idee wieso das ganze übers Property nicht funktioniert?
mfg Ahsous