googleappengine:在一个函数中传递超过255个参数

2024-03-29 12:19:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发一个web应用程序,使用googleappengine和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))

Tags: 函数self应用程序参数deftemplaterenderwrite