Django итерирует по шаблону с двумя комментариями от views.py - PullRequest
0 голосов
/ 22 января 2019

У меня есть следующий код:

файл views.py:

twittdict = {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6}
twitlistdict = {'A' : 'a', 'B': 'b', 'C': 'c'}
return render(request, 'homepageapp/home.html', {'twittdict' : twittdict, 
'twitlistdict' : twitlistdict})

homepage.html файл:

{% for user in twitlistdict %}
                          <a 
href="https:*/{{ twittdict.user.3 }}"> 
<div class="card border-white mb-3">
                   <p class="card-title"><div class="media">
            <img class="mr-3 align-self-center" 
src="https://source.unsplash.com/random/90x94">
            <div class="media-body">
                <h5>{{ twittdict.user.0 }}</h5>
                <h6>@{{ twittdict.user.1 }}</h6>
                <p></p>
            </div>
        </div></p>
                    <img class="card-img-top img-fluid" 
src="https://source.unsplash.com/random/301x200" alt="">
                    <div class="card-body">
                        <p class="card-text">{{ twittdict.user.4 }}</p>
                        <p class="card-text">
                           <hr>
                            <i class="fas fa-retweet">{{ twittdict.user.6 }} 
</i> <i class="far fa-heart">{{ twittdict.user.5 }}</i> <span class="pl-5"> 
{{ twittdict.user.2 }}</span>
                        </p>
                    </div>
                </div>
                      </div>{% endfor %}

При предварительном просмотре страницы с помощьюбраузер, вместо элементов цикла (например, соответствующее значение twittdict.user.2), ничего не отображается.Blank.Как я могу заставить это работать и отображать правильные значения на странице?Действительно борется с этим.Любая помощь с благодарностью. Заранее спасибо.

1 Ответ

0 голосов
/ 22 января 2019

Клавиши в twitlistdict (например, «A», «B») не соответствуют никаким клавишам в twittdict (например, «0», «1»).

Также вы не можете получить индекс переменной в шаблоне с помощью twittdict.user, он попытается получить twittdict['user'].Доступ с помощью цифровых клавиш будет работать только со списками, а не со словарями.

Попробуйте сформировать один словарь в python вместо двух, что облегчит работу с ним в шаблоне.Полезно было бы использовать dict.items() для получения ключа и значения элемента dict:

{% for key, value in my_dict.items() %} 
  {{ key }}: {{ value }} 
{% endfor %}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...