Найти - Пользователи
Полная версия: Расширение модели User
Начало » Django » Расширение модели User
1 2 3
dnstuff
В релизе 1.5 вроде появилась возможность легко переопределять модель User. А как это сделать? Например, добавить пару полей.
topboy912
Вы не подскажите где можно почитать про создание профиля пользователей?
inoks
так там же и про это есть
https://docs.djangoproject.com/en/1.7/topics/auth/customizing/#extending-the-existing-user-model
ZaEzzz
Битый день уже пытаюсь воспользоваться AutoOneToOneField, но как-то безуспешно.
Кто-нибудь сможет подсказать где я ошибаюсь и что делаю не так?

models.py
from task.fields import AutoOneToOneField
from django.contrib.auth.models import User, UserManager
class Profile(models.Model):
	user = AutoOneToOneField(User, primary_key=True)
	task_count = models.IntegerField('Выполнено задач', blank=True, default=0)
	class Meta:
		verbose_name = 'Профиль'
		verbose_name_plural = 'Профили'

fields.py
from django.db.models import OneToOneField
from django.db.models.fields.related import SingleRelatedObjectDescriptor
class AutoSingleRelatedObjectDescriptor(SingleRelatedObjectDescriptor):
    def __get__(self, instance, instance_type=None):
        try:
            return super(AutoSingleRelatedObjectDescriptor, self).__get__(instance, instance_type)
        except self.related.model.DoesNotExist:
            obj = self.related.model(**{self.related.field.name: instance})
            obj.save()
            return obj
class AutoOneToOneField(OneToOneField):
    def contribute_to_related_class(self, cls, related):
        setattr(cls, related.get_accessor_name(), AutoSingleRelatedObjectDescriptor(related))

views.py для проверки
def index(request):
	profile = Profile.objects.get(pk=1)
	return HttpResponse(profile)

В итоге получаю на выдачу:
Django Version:	1.6
Exception Type:	DoesNotExist
Exception Value:	
Profile matching query does not exist.
ZaEzzz
Спасибо slav0nic'у))
Я неправильно готовил - надо было обращаться к профилю не напрямую, а через модель)))) User
Rusich
ZaEzzz
ты дурачек шоле?
Пост slav0nic очень старый и сейчас богоугодно делать как говорит inoks.
ZaEzzz
Rusich, на данном этапе мне это не надо
Сейчас мне нужно, чтобы просто объекты в связанной модели автоматом создавались при обращении к ним и не было громадного кол-ва значений - порождает неудобство при просмотре БД.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB