我最近开始学习Python / Django作为一个整体,并试图加快我的学习曲线,同时做一些有建设性的事情,我已经开始了自己的个人项目。
我已经安装了最新的Django / Python / Jinja2和Python Battle.net API egg。 目前我正在查询“字符”,我正在尝试更改返回值的输出,这是我的观点中的函数:
def viewCharacter(request, name):
character = get_object_or_404(Member, name=name)
info = Character('EU', 'Auchindoun', name, fields=[Character.GUILD])
ctx = { 'character': character, 'info': info, 'guildname': 'Guild Name' }
return render_to_response("roster/viewCharacter.html", ctx, request)
现在,在我的模板中,我尝试将info.class_(它返回一个数值)从它的数值转换为字符串(类名),但我总是收到有关info.class_的错误消息无法在if / for statement / loops或其他错误中使用。 (尝试将它与两元组进行比较)
我真的找不到在网上这样做的方法,所以我来到了一个在我的学习过程中帮助我最多的地方。
任何帮助都将非常感谢! - Nieeru
答案 0 :(得分:0)
如果您确实需要在模板中使用类名,请尝试使用this模板过滤器,或者只是在视图中获取它并传入上下文:)
答案 1 :(得分:0)
是否有任何理由无法将其他变量添加到上下文中,如下所示:
ctx = {'character':character,'info':info,'class':repr(info.class_),'guildname':'Guild Name'}
编辑:根据您提供的其他信息,这是我的新建议。
变化:
ctx = { 'name': name, 'character': character, 'info': info, 'class': repr(info.class_), 'guildname': 'Team-Potato' }
为:
ctx = { 'name': name, 'character': character, 'info': info, 'className': classnameDict[info.class_], 'guildname': 'Team-Potato' }
这只是在视图中查找类。现在使用
将其添加到模板中{{className}}