在Django模板中获取特定的用户信息

时间:2017-04-08 12:18:14

标签: python django templates

我需要一些帮助,我已经扩展了自定义用户模型,但出于某种原因,如果在模板中我获得了所需的字段,则它不会显示任何内容。

views.py:

def index(request):
    utente = User.objects.filter(username__in=["user"])
    return render(request,"blog/index.html", {'users' : utente})

HTML:

{% for utente in users %}

                    <img class="img-circle center-block" src="{{ utente.img.url }}" width="140" height="140">
                    <h2 class="text-center">{{ utente.get_full_name }}</h2>
                    <p class="text-center">{{ utente.bio }}</p>

                {% endfor %}

使用此代码,我只能使用&#34; get_full_name&#34;来获取名称。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

看起来您正在导入Django提供的用户模型,而不是您的自定义用户模型。

尝试更改:

from django.contrib.auth.models import User

from django.contrib.auth import get_user_model

然后使用get_user_model

选择您的用户
def index(request):
    utente = get_user_model().objects.filter(username__in=["user"])
    return render(request,"blog/index.html", {'users' : utente})

另外,请确保在settings.py文件中将AUTH_USER_MODEL设置为自定义用户模型。

AUTH_USER_MODEL = 'myapp.MyUser'