我正在开发一个网络应用程序,使用 Google App Engine 和 Python 作为后端语言。此外,我正在使用 Jinja2 模板引擎来呈现 HTML 页面。
现在,在使用 render() 函数将数据传递到网页时,我们需要传递到 render() 函数的参数数量远远超过 255 个参数。并且这似乎是 render() 函数一次可以接受的最大参数数量。
这是处理程序的代码,其中我使用 render() 函数传入超过 255 个参数(目前只有 241 个,其他参数暂时被注释掉):
self.render("fourthyear.html" ,gadq111=gadq111,gadq112=gadq112,gadq113=gadq113,gadq114=gadq114,gadq115=gadq115,gadq116=gadq116,gadq117=gadq117,
gadq121=gadq121,gadq122=gadq122,gadq123=gadq123,gadq124=gadq124,gadq125=gadq125,gadq126=gadq126,gadq127=gadq127,
gadq131=gadq131,gadq132=gadq132,gadq133=gadq133,gadq134=gadq134,gadq135=gadq135,gadq136=gadq136,gadq137=gadq137,
gadq141=gadq141,gadq142=gadq142,gadq143=gadq143,gadq144=gadq144,gadq145=gadq145,gadq146=gadq146,gadq147=gadq147,
gadq151=gadq151,gadq152=gadq152,gadq153=gadq153,gadq154=gadq154,gadq155=gadq155,gadq156=gadq156,gadq157=gadq157,
nbaq111=nbaq111,nbaq112=nbaq112,nbaq113=nbaq113,nbaq114=nbaq114,nbaq115=nbaq115,nbaq116=nbaq116,nbaq117=nbaq117,
nbaq121=nbaq121,nbaq122=nbaq122,nbaq123=nbaq123,nbaq124=nbaq124,nbaq125=nbaq125,nbaq126=nbaq126,nbaq127=nbaq127,
nbaq131=nbaq131,nbaq132=nbaq132,nbaq133=nbaq133,nbaq134=nbaq134,nbaq135=nbaq135,nbaq136=nbaq136,nbaq137=nbaq137,
nbaq141=nbaq141,nbaq142=nbaq142,nbaq143=nbaq143,nbaq144=nbaq144,nbaq145=nbaq145,nbaq146=nbaq146,nbaq147=nbaq147,
nbaq151=nbaq151,nbaq152=nbaq152,nbaq153=nbaq153,nbaq154=nbaq154,nbaq155=nbaq155,nbaq156=nbaq156,nbaq157=nbaq157,
soeie111=soeie111,soeie112=soeie112,soeie113=soeie113,soeie114=soeie114,soeie115=soeie115,soeie116=soeie116,soeie117=soeie117,
soeie121=soeie121,soeie122=soeie122,soeie123=soeie123,soeie124=soeie124,soeie125=soeie125,soeie126=soeie126,soeie127=soeie127,
soeie131=soeie131,soeie132=soeie132,soeie133=soeie133,soeie134=soeie134,soeie135=soeie135,soeie136=soeie136,soeie137=soeie137,
soeie141=soeie141,soeie142=soeie142,soeie143=soeie143,soeie144=soeie144,soeie145=soeie145,soeie146=soeie146,soeie147=soeie147,
soeie151=soeie151,soeie152=soeie152,soeie153=soeie153,soeie154=soeie154,soeie155=soeie155,soeie156=soeie156,soeie157=soeie157,
obmd111=obmd111,obmd112=obmd112,obmd113=obmd113,obmd114=obmd114,obmd115=obmd115,obmd116=obmd116,obmd117=obmd117,
obmd121=obmd121,obmd122=obmd122,obmd123=obmd123,obmd124=obmd124,obmd125=obmd125,obmd126=obmd126,obmd127=obmd127,
obmd131=obmd131,obmd132=obmd132,obmd133=obmd133,obmd134=obmd134,obmd135=obmd135,obmd136=obmd136,obmd137=obmd137,
obmd141=obmd141,obmd142=obmd142,obmd143=obmd143,obmd144=obmd144,obmd145=obmd145,obmd146=obmd146,obmd147=obmd147,
obmd151=obmd151,obmd152=obmd152,obmd153=obmd153,obmd154=obmd154,obmd155=obmd155,obmd156=obmd156,obmd157=obmd157,
obhod111=obhod111,obhod112=obhod112,obhod113=obhod113,obhod114=obhod114,obhod115=obhod115,obhod116=obhod116,obhod117=obhod117,
obhod121=obhod121,obhod122=obhod122,obhod123=obhod123,obhod124=obhod124,obhod125=obhod125,obhod126=obhod126,obhod127=obhod127,
obhod131=obhod131,obhod132=obhod132,obhod133=obhod133,obhod134=obhod134,obhod135=obhod135,obhod136=obhod136,obhod137=obhod137,
obhod141=obhod141,obhod142=obhod142,obhod143=obhod143,obhod144=obhod144,obhod145=obhod145,obhod146=obhod146,obhod147=obhod147,
obhod151=obhod151,obhod152=obhod152,obhod153=obhod153,obhod154=obhod154,obhod155=obhod155,obhod156=obhod156,obhod157=obhod157,
oorav111=oorav111,oorav112=oorav112,oorav113=oorav113,oorav114=oorav114,oorav115=oorav115,oorav116=oorav116,oorav117=oorav117,
oorav121=oorav121,oorav122=oorav122,oorav123=oorav123,oorav124=oorav124,oorav125=oorav125,oorav126=oorav126,oorav127=oorav127,
oorav131=oorav131,oorav132=oorav132,oorav133=oorav133,oorav134=oorav134,oorav135=oorav135,oorav136=oorav136,oorav137=oorav137,
oorav141=oorav141,oorav142=oorav142,oorav143=oorav143,oorav144=oorav144,oorav145=oorav145,oorav146=oorav146,oorav147=oorav147,
oorav151=oorav151,oorav152=oorav152,oorav153=oorav153,oorav154=oorav154,oorav155=oorav155,oorav156=oorav156,oorav157=oorav157)
"""oorad111=oorad111,oorad112=oorad112,oorad113=oorad113,oorad114=oorad114,oorad115=oorad115,oorad116=oorad116,oorad117=oorad117,
oorad121=oorad121,oorad122=oorad122,oorad123=oorad123,oorad124=oorad124,oorad125=oorad125,oorad126=oorad126,oorad127=oorad127,
oorad131=oorad131,oorad132=oorad132,oorad133=oorad133,oorad134=oorad134,oorad135=oorad135,oorad136=oorad136,oorad137=oorad137,
oorad141=oorad141,oorad142=oorad142,oorad143=oorad143,oorad144=oorad144,oorad145=oorad145,oorad146=oorad146,oorad147=oorad147,
oorad151=oorad151,oorad152=oorad152,oorad153=oorad153,oorad154=oorad154,oorad155=oorad155,oorad156=oorad156,oorad157=oorad157,
cico111=cico111,cico112=cico112,cico113=cico113,cico114=cico114,cico115=cico115,cico116=cico116,cico117=cico117,
cico121=cico121,cico122=cico122,cico123=cico123,cico124=cico124,cico125=cico125,cico126=cico126,cico127=cico127,
cico131=cico131,cico132=cico132,cico133=cico133,cico134=cico134,cico135=cico135,cico136=cico136,cico137=cico137,
cico141=cico141,cico142=cico142,cico143=cico143,cico144=cico144,cico145=cico145,cico146=cico146,cico147=cico147,
cico151=cico151,cico152=cico152,cico153=cico153,cico154=cico154,cico155=cico155,cico156=cico156,cico157=cico157,
so111=so111,so112=so112,so113=so113,so114=so114,so115=so115,so116=so116,so117=so117,
so121=so121,so122=so122,so123=so123,so124=so124,so125=so125,so126=so126,so127=so127,
so131=so131,so132=so132,so133=so133,so134=so134,so135=so135,so136=so136,so137=so137,
so141=so141,so142=so142,so143=so143,so144=so144,so145=so145,so146=so146,so147=so147,
so151=so151,so152=so152,so153=so153,so154=so154,so155=so155,so156=so156,so157=so157"""
有没有一种方法可以将超过 255 个参数传递给 render() 函数?我们的应用程序非常需要这些参数中的每一个都能按预期工作。这个问题的任何替代方案都可以。
编辑:
我忘记包含 render() 函数。它不是预定义的函数。
class Handler(webapp2.RequestHandler):
def write(self, *a, **kw):
self.response.out.write(*a, **kw)
def render_str(self, template, **params):
t = jinja_env.get_template(template)
return t.render(params)
def render(self, template, **kw):
self.write(self.render_str(template, **kw))
我是一名优秀的程序员,十分优秀!