I'm working on a web application, using Google App Engine and Python as the backend language. Also, I'm using Jinja2 templating engine to render the HTML pages.
Now, while using the render() function to pass in data into a web page, the count of the parameters that we need to pass into the render() function exceeds well past 255 arguments. And it seems that that's the maximum number of parameters that the render() function can take at a time.
Here's the code of the handler wherein I use the render() function to pass in more than 255 arguments (only 241 right now, other parameters are being commented out for now):
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"""
Is there a way by which I can pass in more than 255 arguments into the render() function ? Our application pretty much needs every single one of those parameters to work as intended. Any alternatives for this problem would do as well.
Edit:
I forgot to include the render() function. It's not a pre-defined function.
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))