как извлечь данные из внешнего ключа - PullRequest
0 голосов
/ 13 декабря 2010

кодирую с утра, и я не могу получить какие-либо данные от auth_user. я сделал класс в моей модели. вот код:

from django.contrib.auth.models import User as DjangoUser
......
class Author(models.Model):
    """
    Data model that holds posts' authors as shown in author pages
    """
    django_user = models.ForeignKey(DjangoUser, primary_key=True)
    about = models.TextField('About', null=True, blank=True)
    avatar = ImageWithThumbsField('Pic', upload_to=settings.PATH_AVATAR, blank=True, null=True, sizes=settings.SIZES_AVATAR)

в моей модели DjangoUser я хочу получить имя_символа ...

что я буду кодировать в моем файле просмотра для получения имени автора?

спасибо большое. Ваши ответы я очень ценю ...

1 Ответ

1 голос
/ 13 декабря 2010

Как сказано в документации по аутентификации , пользовательская модель содержит атрибут first_name.

# get the author from the database using a user as a primary key
user = User.objects.get(id=1)
author = Author.objects.get(user)

# display the author's first name by accessing the 
# User model first, then its properties
author.django_user.first_name

Однако вы действительно должны прочитать Хранение дополнительной информации оПользователь на той же странице документации аутентификации.Это объясняет, как правильно построить профиль для объекта User.Таким образом, профиль сохраняется рядом с Пользователем, оставляя объект User нетронутым.Это сделано специально, поскольку вы можете использовать метод get_profile () для поиска в этом профиле.

...