2016-05-06 7 views
-3
my view. 
teamname_list = team.objects.values('teamName') 

in my template template html 
{{teamname_list}} 

outputs: 
[{'teamName': "['Paul', 'John']"}] 
--------------------------------------------------- 
alternatively values instead of values_list 
view 
teamname_list = team.objects.values('teamName') 
in template 
{{teamname_list}} 
output: 
[("['Paul', 'John']",)] 

Есть ли способ проходного teamname_list, чтобы получить символы по отдельности, так на странице HTML это показывает, как только Павел и Иоанн, рассматриваются как их собственная строка или даже производить список так перекручивание через них и добавление их в виде неупорядоченного списка т.е.Перебора шаблона Джанго/список словаря

* paul 
* john 

пытался некоторое время теперь пару часов и не могу показаться, чтобы получить что-нибудь работать, перепробовал все возможные решения для фильтров, за исключением, потому что я, кажется, иметь проблему с их использованием. Любые другие решения?

+0

Какой тип поля teamName в вашей модели класса? –

+0

Не могли бы вы также добавить модели. – AKS

+0

Вам нужно показать весь свой вид. Вы делаете что-то очень странное, чтобы иметь одну строку, содержащую ваши два значения внутри кортежа внутри списка. –

ответ

0

Вы можете использовать for loop в своем шаблоне django. Например:

<ul> 
    {% for teamname in teamname_list %} 
    <li>{{ teamname }}</li> 
    {% endfor %} 
</ul> 

EDIT: Я не знал, что ваш список имеет только одно значение. Попробуйте сделать это для начала:

teamname_list = team.objects.all() 
+0

Нет, что будет печатать: * («[Paul», «John»], где star - это точка пули – erergregreg

+0

Ahh Я не знал, что ваш список имеет одно значение: '' ['Paul', 'John' ] "'. Я думаю, что вы можете получить доступ к этому неправильно в представлении, см. Мое редактирование. – rofls

+0

all() принимает 1 позиционный аргумент, но 2 дано – erergregreg

0
teamname_list = team.objects.values_list('teamName', flat=True) 

Это будет возвращать список имен. Используйте один для цикла в именах шаблонов и дисплеев.

<ul> 
    {% for teamname in teamname_list %} 
    <li>*{{ teamname }}</li> 
    {% endfor %} 
</ul> 
+0

, это вернет список (маркер) для каждой буквы в имени команды ... так что, anoop = * a * n * o * o * p, а не * anoop – Paul9

+0

@ Paul9, поделитесь своей моделью и одним ответом на образец запроса – Anoop

0
teamname_list = team.objects.all() 

HTML код

<ul> 
    {% for name in teamname_list %} 
    <li>{{ name.teamName }}</li> 
    {% endfor %} 
</ul> 

Пожалуйста, поделитесь модель для более разъяснений