Template includes and django views/urls. How (do/s

2019-03-06 06:38发布

I have a mini box that pops up when hovered to reveal profile information(constantly being hidden). It's working due to a template include:

{% for i in leftbar_network|slice:":12" %}
     {% include "includes/mini_profile.html" %} 
{% endfor %}

But I want to add some conditions and pull other information... for instance: check if they can be messaged. pull that specific profiles friend count.. yadda yadda. I have a url and view that should work. But it seems as though they're being completely ignored.

template:

<div class="mini-profile">
    <div class="mini-profile-top">
        <a href="/profile/{{i.get_type|lower}}/{{ i.user.username }}/" data-title="{{ i.user.get_full_name }}" data-content="{{i.get_type}}">
            <img class="img-frame" width="90" height="90" src="{% if i.avatar %}{% thumbnail i.avatar 120x120 crop %}{% else %}{{ DEFAULT_AVATAR }}{% endif %}" alt="{{ i.user.get_full_name }}" />
        </a>
        <a href="/profile/{{i.get_type|lower}}/{{ i.user.username }}/" data-title="{{ i.user.get_full_name }}" data-content="{{i.get_type}}">{{ i.user.get_full_name }}</a>
        <div>{{ i.get_type }}</div>
    </div>
    <div class="mini-profile-bottom">
        {% if can_message %}
        <form method="GET" action="/messages/compose/{{ i.get_type|lower }}/{{ i.user.username }}/">
            <button class="btn btn-margin" type="submit">
                <i class="icon-envelope"></i> Message
            </button>
        </form>
        {% else %}
        <button class="btn btn-margin tooltip-bottom disabled" title="You need to be connected to message {{profile.user.get_full_name}}" type="submit">
            <i class="icon-envelope"></i> Message
        </button>
        {% endif %}
    </div>
</div>

Is there any way to work with the {% include %} and generate a view around that? Or have I gone about this the wrong way? If so, how should I generate a mini box with a view and url that pops up smoothly?

Example: Google chat, when hovering over a user.

Thanks for your advice in advance.

1条回答
虎瘦雄心在
2楼-- · 2019-03-06 07:26

I want to add some conditions and pull other information... for instance: check if they can be messaged. pull that specific profiles friend count

Sounds like your are looking for a template tag, for an inclusion tag, to be more specific.

So you can put the (python/view) logic in your tag and render the appropiate html similiar to your include.

查看更多
登录 后发表回答