Отображение значения словаря в шаблоне Django - PullRequest
1 голос
/ 28 января 2010

All

У меня есть следующее в views.py

def getgradeform(request):
   id1=request.user.get_pf().id
   sc=Sc.objects.filter(id=id1)
   logging.debug(sc)
   logging.debug("++++")
   dict={}
   dict.update({'sc': sc})
   return render_to_response('content/add.html',dict)

Logging.debug выводит как [<sc: Robert>]

Мой вопрос заключается в том, как мне отобразить Роберта в шаблоне.

Я попробовал следующее в шаблоне: <input type ="text" value={{sc}}/> //This gives me the dictionary itself

<input type ="text" value={{dict.sc}}/> //This also doesnt work.

Спасибо ......

1 Ответ

6 голосов
/ 28 января 2010

Если вы хотите какое-либо значение в словаре, вы должны сделать это в пути

dict.key

(На python вы напишите его как dict ['key'])

Итак, для представления значения, хранящегося с ключом 'name'

{{ sc.name }}

Во всяком случае, я думаю, что это не так. Я думаю, что вы видите не словарь, а объект, определенный из моделей (как запись в базе данных). Вы храните в dict (не называйте это значение как dict, вы маскируете ключевое слово) ключ 'sc' со значением переменной sc, который возвращается из модели. Я должен догадаться, потому что я не знаю, как эта модель. Может быть, «Роберт» хранится в атрибуте name, id или что-то подобное?

Вам нужно показать правильный атрибут, что-то вроде

{{ sc.name }}
{{ sc.id }}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...