首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django子-父模板关系

Django子-父模板关系
EN

Stack Overflow用户
提问于 2015-10-13 13:12:24
回答 1查看 576关注 0票数 0

假设我有

  • mainprofile.html,我从views.profile和
  • followers.html,我从views.followers渲染

当我单击关注者按钮时,它会调用views.followers并呈现关注者并正确地将其插入到主配置文件中。

我想做的事:

当我这样做时,我丢失了父页面上的所有配置文件信息(主要概要文件),比如userinfo.username,我如何克服这个问题?

mainprofile.html:

代码语言:javascript
复制
{% extends 'layout/master.html' %}
    {% load sharedtags %}

    {% block content %}

        {{ userinfo.username }}

        ...some profile information...

        followers_button

        {% block right_side_main_layout %}

            ... some info ...

        {% endblock right_side_main%}

    {% endblock content%}

followers.html:

代码语言:javascript
复制
{% extends 'mainprofile.html' %}
{% block right_side_main_layout %}

    ... list of followers ...

{% endblock right_side_main_layout %}

views.py:

代码语言:javascript
复制
def profile(request,username):

    userdetail  = AuthUser.objects.filter(username=username) 

    template='profil/mainprofile.html'
    context = RequestContext(request, {'userinfo': userdetail })
    return render_to_response(template, context)

def followers(request, username):

    followers  = Followers.objects.filter(username=username)  

    template = 'profil/em-profile-follower.html'
    context = RequestContext(request,{'followers': followers})
    return direct_to_template(template,context)

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-13 13:19:07

您还必须将AuthUser实例添加到followers视图中。

代码语言:javascript
复制
def followers(request, username):

    followers  = Followers.objects.filter(username=username)  
    userdetail  = AuthUser.objects.filter(username=username) 

    template = 'profil/em-profile-follower.html'
    context = RequestContext(request,{'followers': followers, 'userinfo': userdetail})
    return direct_to_template(template,context)

现在,您还可以在这个模板(和视图)中获得userinfo。

我不知道你的模特看上去怎么样。但是我假设AuthUser有一个ForeignKeyField(追随者)。如果您给这个字段一个related_name (像‘追随者’),您可以这样做:

userdetail = AuthUser.objects.filter(username=username)

在模板中,您可以通过以下操作访问您的追随者:userdetail.followers

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33103627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档