Как вызвать обратную связь OneToOneField в шаблоне (django)?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как вызвать обратную связь OneToOneField в шаблоне (django)?

Сообщение Anonymous »

Эти модели есть в моем файле models.py

Код: Выделить всё

User Model

Код: Выделить всё

class User(AbstractBaseUser, PermissionsMixin):
"""Custom user model"""
email = models.EmailField(max_length=255, unique=True)
first_name = models.CharField(max_length=255)
last_name = models.CharField(max_length=255)
is_active = models.BooleanField(default=True)
is_staff = models.BooleanField(default=False)
def __str__(self):
return '{}'.format(self.email)

Код: Выделить всё

UserInfo Model

Код: Выделить всё

class UserInfo(models.Model):
"""User's Info"""
user = models.OneToOneField(User, related_name="parent_user", on_delete=models.CASCADE)
image = models.ImageField(upload_to=user_image_file_path)
age = models.IntegerField()
bio = models.CharField(max_length=400)
def __str__(self):
return '{}'.format(self.user)
Мой шаблон

В моем шаблоне я передаю несколько отфильтрованных профилей пользователей(скажем, фильтрация по возрасту, если возраст > 25), теперь мне нужно показать имя пользователя (

Код: Выделить всё

first_name
), но я не знаю, как вызвать OneToOnefield обратно. Помощь очень ценится :).

Код: Выделить всё

  {% for p in profiles %}



[img]media/{{p.image}}[/img]


User First Name is : {{`What to type here?`}}





BIO
{{p.bio}}
Age:
{{p.age}}



{% endfor %}
РЕДАКТИРОВАТЬ:
Мои представления.py:

Я передаю список именованных профилей, которые отфильтровали профили на основе 2-3 фильтры другого типа, поэтому код со всеми ссылками будет слишком большим, чтобы его можно было вставить сюда.
Я вставляю сюда короткую версию:

Код: Выделить всё

start =18
end=25
matching = UserInfo.objects.filter(
age__gte=start, age__lte=end
).values()

for z in matching:
if z['user_id'] not in rec_ids:
profiles.append(z)
print('profiles====', profiles)

context = {
'profiles' : profiles,
}

return render(request, 'home/news.html', context)

Вставка вывода сюда

Код: Выделить всё

profiles==== [{'id': 18, 'user_id': 8, 'image': 'uploads/user/image/9d096190-73a0-4885-b4cd-ef6c7229b9eb.png', 'age': 23, 'bio': 'cool'}..etc]
Спасибо :)

Подробнее здесь: https://stackoverflow.com/questions/681 ... ate-django
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»