2010-01-28 3 views
1

Все,Отображение значения словаря в шаблоне Джанго

У меня есть следующий в моем 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.

Благодаря ......

ответ

5

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

dict.key 

(На питона вы будете писать его как Dict [ 'ключ'])

Таким образом, чтобы представить значение, сохраненное с ключом «имя»

{{ sc.name }} 

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

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

{{ sc.name }} 
{{ sc.id }} 
+0

Спасибо, но я до сих пор есть проблемы с отображением его ........ Logging.debug дает выход в виде [] (извините не маленький регистр sc), и когда я скажу {{sc.SC}}, вывод равен нулю – Hulk

+0

Я понял это для помощи. Я использовал цикл for для отображения значения, подобного следующему {% for s in sc%} {{s}} {% endfor%} – Hulk

+0

ОК, тогда вы хотели распечатать все значения в словаре ;-) – Khelben

Смежные вопросы