在django模板中参考用户ID显示用户名

Ed.*_*Ed. 2 django join reversion

我希望这是一个简单的问题.出于某种原因,我还没有解决方案.

我有一个来自django reversion的对象集:version_list.集合中的每个对象都附加了一个用户ID.如何获取与用户ID对应的用户名?

为了更清楚,如果version_list中的每个对象都有名称,日期和用户ID,我如何加入带有用户表的version_list集来确定哪个用户ID与哪个名称相关?这是在视图或模板中完成的?

Jus*_*hms 9

我想你正在寻找一个简单的模板标签.

from django import template
from django.contrib.auth.models import User

register = template.Library()

@register.simple_tag
def get_username_from_userid(user_id):
    try:
        return User.objects.get(id=user_id).username
    except User.DoesNotExist:
        return 'Unknown'
Run Code Online (Sandbox Code Playgroud)

您将使用哪个:

{% for version in version_list %}
  {% get_username_from_userid version.user_id %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)