python - django render template
黄舟
黄舟 2017-04-17 11:52:45
[Python讨论组]

最近在使用django 开发一个网站,views 在渲染模板的时候,总是有很多数据要传递给模板,使得最后的return 语句相当难看,没有什么易读性。
return render_to_response(
'test.html',
{
'test1': test1,
'test2': test2,
'test3': test3,
'test4': test4,
'test5': test5,
'test6': test6,
'test7': test7,
'test8': test8,
'test9': test9,
'test10': test10,
'test11': test11,
'test12': test12,
'test13': test13,
'test14': test14,
'test15': test15,
'test16': test16,
'test17': test17,
'test18': test18,
}
) 请问有什么优雅的方式可以传递较多的数据给模板。

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(4)
PHP中文网

懒一点的直接用
return render(request, 'test.html', locals())
曾经profile过的人表示,什么模板渲染效率(说渲染引擎会deepcopy这个kwargs的人是根本没看过源代码!)、时间的,只要模板不是过多include,造成template nodes特别多,就基本上不够数据库处理的零头。

怪我咯

把这么多数据放在一个 dict 里不就完了么。

 return render_to_response('test.html', dict_a)
黄舟

这样写不就完了么。

return render_to_response('test.html',{'test1': test1,'test2': test2,'test3': test3,'test4': test4,'test5': test5,'test6': test6,'test7': test7,'test8': test8,'test9': test9,'test10': test10,'test11': test11,'test12': test12,'test13': test13,'test14': test14,'test15': test15,'test16': test16,'test17': test17,'test18': test18,}) 
PHP中文网

class testData():
t1 = test1
t2 = test2
t3 = test3
.....
然后传一个testData的实例过去就行了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号