当前位置: 首页>>代码示例>>Python>>正文


Python Template.respond方法代码示例

本文整理汇总了Python中Cheetah.Template.Template.respond方法的典型用法代码示例。如果您正苦于以下问题:Python Template.respond方法的具体用法?Python Template.respond怎么用?Python Template.respond使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Cheetah.Template.Template的用法示例。


在下文中一共展示了Template.respond方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: get_config_from_template

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
    def get_config_from_template(self, tmpl_path, vars_dict):
        logging.debug("template path is %s", tmpl_path)
        logging.debug("vars_dict is %s", vars_dict)

        if not os.path.exists(tmpl_path) or not vars_dict:
            logging.info("Template dir or vars_dict is None!")
            return {}

        searchList = []
        copy_vars_dict = deepcopy(vars_dict)
        for key, value in vars_dict.iteritems():
            if isinstance(value, dict):
                temp = copy_vars_dict[key]
                del copy_vars_dict[key]
                searchList.append(temp)
        searchList.append(copy_vars_dict)

        # Load base template first if it exists
        base_config = {}
        base_tmpl_path = os.path.join(os.path.dirname(tmpl_path), 'base.tmpl')
        if os.path.isfile(base_tmpl_path) and base_tmpl_path != tmpl_path:
            base_tmpl = Template(file=base_tmpl_path, searchList=searchList)
            base_config = json.loads(base_tmpl.respond(), encoding='utf-8')
            base_config = json.loads(json.dumps(base_config), encoding='utf-8')

        # Load specific template for current adapter
        tmpl = Template(file=open(tmpl_path, "r"), searchList=searchList)
        config = json.loads(tmpl.respond(), encoding='utf-8')
        config = json.loads(json.dumps(config), encoding='utf-8')

        # Merge the two outputs
        config = util.merge_dict(base_config, config)

        logging.debug("get_config_from_template resulting %s", config)
        return config
开发者ID:huawei-gts,项目名称:compass-core,代码行数:37,代码来源:installer.py

示例2: usertasks

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
 def usertasks(self,task_name=None,pageNumber=1,nPerPage=1500,callback=None,**kwargs):
     ''' usertasks returns celery tasks perform and the link to the task result page.
         task_name-  string optional
         pageNumber and nPerPage is optional
     ''' 
     db=self.db[self.database][self.collection]
     try:
         page=int(pageNumber)
         perPage=int(nPerPage)
     except:
         page=1
         perPage=100
     try:
         if cherrypy.request.login:
             user = cherrypy.request.login
         else:
             user = "guest"
     except:
         pass 
     if not task_name:
         res=db.find({'user':user}).skip((page-1)* int(nPerPage)).limit(int(nPerPage)).sort([('timestamp',-1)]) 
         rows=db.find({'user':user}).count()
     else:
         res=db.find({'user':user,'task_name':task_name}).skip((page-1) * int(nPerPage)).limit(int(nPerPage)).sort([('timestamp',-1)])
         rows=db.find({'user':user,'task_name':task_name}).count()
     ePage= int(math.ceil(float(rows)/float(perPage)))
     nameSpace = dict(tasks=res,page=page,endPage=ePage)#tresult)
     #t = Template(file = templatepath + '/usertasks.tmpl', searchList=[nameSpace])
     if callback:
         t = Template(file = templatepath + '/usertasks_call.tmpl', searchList=[nameSpace])
         return str(callback) + "(" + json.dumps({'html':t.respond()}) + ")"
     else:
         t = Template(file = templatepath + '/usertasks.tmpl', searchList=[nameSpace])
         return t.respond()
开发者ID:jduckles,项目名称:queue,代码行数:36,代码来源:queue_status.py

示例3: tecodata

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
 def tecodata(self,site='US-HA1',upload=None,model=None,callback=None,**kwargs):
     ''' usertasks returns celery tasks perform and the link to the task result page.
         task_name-  string optional
         pageNumber and nPerPage is optional
     ''' 
     #db=self.db[self.database][self.collection]
     if model:
         if upload:
             yrs=self.db[self.database]['uploaded_grass'].find({'Site':site,'user':upload}).distinct('year')
         else:
             yrs=self.db[self.database]['years'].find_one({'Site':site,'type':model})['years']
     else:
         if upload:
             yrs=self.db[self.database]['uploaded_data'].find({'Site':site,'user':upload}).distinct('Year')
         else:
         #yrs=self.db[self.database][self.collection].find({'Site':site}).distinct('Year')
             yrs=self.db[self.database]['years'].find_one({'Site':site,'type':'default'})['years']
     yrs.sort()
     nameSpace = dict(years=yrs,site=site,start=yrs[0],end=yrs[-1])
     if callback:
         cherrypy.response.headers['Content-Type'] = "application/json"
         t = Template(file = templatepath + '/tecodata_call.tmpl', searchList=[nameSpace])
         return str(callback) + "(" + json.dumps({'html':t.respond()}) + ")"
     else:
         cherrypy.response.headers['Content-Type'] = "text/html"
         t = Template(file = templatepath + '/tecodata.tmpl', searchList=[nameSpace])
         return t.respond()
开发者ID:ouinformatics,项目名称:cybercom_tools,代码行数:29,代码来源:views.py

示例4: generate_download_script

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
def generate_download_script(root="", arch="", tmpl="", docker_tmpl="", default_packages="",
                             special_packages="", special_packages_script_dir="", special_packages_dir=""):
    package_name_list = get_packages_name_list(get_file_list(root, arch), special_packages) if root else []

    tmpl = Template(file=tmpl, searchList={'packages':package_name_list, 'default_packages':default_packages})
    with open('work/repo/install_packages.sh', 'w') as f:
        f.write(tmpl.respond())

    make_script = []
    for i in special_packages:
        name = 'make_' + i + '.sh'
        if os.path.exists(os.path.join(special_packages_script_dir, name)):
            make_script.append(name)

    searchList = {'scripts':make_script}
    if os.path.exists(special_packages_dir):
        special_packages_names=[]

        for parent, dirname, filenames in os.walk(special_packages_dir):
            for filename in filenames:
                 if os.path.isfile(os.path.join(parent, filename)):
                      special_packages_names.append(filename)
        searchList.update({'spcial_packages':special_packages_names})

    Dockerfile=os.path.basename(docker_tmpl).split('.')[0]
    tmpl = Template(file=docker_tmpl, searchList=searchList)
    with open(os.path.join('work/repo', Dockerfile), 'w') as f:
        f.write(tmpl.respond())
开发者ID:meticulous-dft,项目名称:compass4nfv-ref,代码行数:30,代码来源:gen_ins_pkg_script.py

示例5: result

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
 def result(self,taskid,callback=None,**kwargs):
     ''' Generates result page. This description provides provenance of tombstone
     '''
     db=self.db[self.database]
     resb = {}
     tresult=db['cybercom_queue_meta'].find({'_id':taskid})
     if not tresult.count() == 0:
         resb['Completed']=str(tresult[0]['date_done'])
         resb['Result'] = pickle.loads(tresult[0]['result'])#.encode())
         try:
             urlcheck = commands.getoutput("wget --spider " + resb['Result'] + " 2>&1| grep 'Remote file exists'")
             if urlcheck:
                 resb['Result']='<a href="' + resb['Result'] + '" target="_blank">' + resb['Result'] + '</a>'
         except:
             pass
         resb['Status'] = tresult[0]['status']
         resb['Traceback'] =pickle.loads( tresult[0]['traceback'])#.encode())
         
     if isinstance(resb['Result'], type(resb)):
         if 'task_id' in resb['Result']:
             sub= True
             sub_taskid = resb['Result']['task_id']
         else:
             sub=False
             sub_taskid = None
     else:
         sub=False
         sub_taskid = None
     nameSpace = dict(tomb=[resb],haschild=sub,sub_taskid=sub_taskid)
     if callback:
         t = Template(file=templatepath + '/tomb_result_call.tmpl', searchList=[nameSpace])
         return str(callback) + "(" + json.dumps({'html':t.respond()}) + ")"
     else:
         t = Template(file=templatepath + '/tomb_result.tmpl', searchList=[nameSpace])
         return t.respond()
开发者ID:ouinformatics,项目名称:cybercom_tools,代码行数:37,代码来源:queue_status.py

示例6: output_result

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
 def output_result(self, methodname, template, result, action_metadata, outf,
                   return_template=False):
     """
     Renders a response body
     """
     from Cheetah.Template import Template
     # any result with custom serialization
     if action_metadata.get('return_type') == 'plain':
         outf.write(str(result))
     elif callable(result):
         outf.write(result())
     # JSON with simple serialization (dict -> string)
     elif action_metadata.get('return_type') == 'json':
         json.dump(result, outf)
     # Template
     elif type(result) is DictType:
         self.add_globals(result, methodname, action_metadata)
         if template.endswith('.tmpl'):
             template_class = self._get_template_class(template[:-5])
             tpl_ans = template_class(searchList=[result, self.args])
         else:
             tpl_ans = Template(template, searchList=[result, self.args])
         if return_template:
             return tpl_ans
         tpl_ans.respond(CheetahResponseFile(outf))
开发者ID:tomachalek,项目名称:kontext,代码行数:27,代码来源:__init__.py

示例7: report

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
 def report(self,taskid,callback=None,**kwargs):
     ''' Generates task result page. This description provides provenance and all information need to rerun tasks
         taskid is required
     '''
     db=self.db[self.database]
     res=db[self.collection].find({'task_id':taskid})
     resb = {}
     tresult=db['cybercom_queue_meta'].find({'_id':taskid})
     if not tresult.count() == 0:
         resb['Completed']=str(tresult[0]['date_done'])
         resb['Result'] = pickle.loads(tresult[0]['result'])#.encode())
         try:
             urlcheck = commands.getoutput("wget --spider " + resb['Result'] + " 2>&1| grep 'Remote file exists'")
             if urlcheck:
                 resb['Result']='<a href="' + resb['Result'] + '" target="_blank">' + resb['Result'] + '</a>'
         except:
             pass
         resb['Status'] = tresult[0]['status']
         resb['Traceback'] =pickle.loads( tresult[0]['traceback'])#.encode())
         if isinstance(resb['Result'], type(resb)):
             if 'task_id' in resb['Result']:
                 sub= True
                 sub_taskid = resb['Result']['task_id']
             else:
                 sub = False
                 sub_taskid = None
         else:
             sub= False
             sub_taskid = None
     else:
         sub = False
         sub_taskid = None
     for row in res:
         resclone=row
         for k,v in resclone['kwargs'].items():
             try:
                 temp = ast.literal_eval(v)
                 if type(temp) is dict:
                     hml = "<table class='table table-border'>"
                     for key, val in temp.items():
                         hml = hml + "<tr><td>" + str(key) + "</td><td>" + str(val) + "</td></tr>"
                     hml = hml + "</table>"
                     resclone['kwargs'][k]=hml
             except:
                 pass
     nameSpace = dict(tasks=[resclone],task_id=taskid,tomb=[resb],haschild=sub,sub_taskid=sub_taskid)
     #t = Template(file=templatepath + '/result.tmpl', searchList=[nameSpace])
     if callback:
         t = Template(file=templatepath + '/result_call.tmpl', searchList=[nameSpace])
         return str(callback) + "(" + json.dumps({'html':t.respond()}) + ")"   
     else:
         t = Template(file=templatepath + '/result.tmpl', searchList=[nameSpace])
         return t.respond()
开发者ID:ouinformatics,项目名称:cybercom_tools,代码行数:55,代码来源:queue_status.py

示例8: render

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
def render(environ, start_response, template_file, var, directory=''):
    """Fonction executant start_response, c'est a dire renvoi la requete au serveur
    qui la transmet au client. (en wsgi l'application discute en local avec le serveur)
    """
    body   = Template(file=os.path.join('htdocs', 'templates', template_file), namespaces=[var, environ])
    footer = Template(file=os.path.join('htdocs','templates', 'footer.html'))
    status =  '200 OK'

    "mise en place des headers_http"
    header_http = [('Content-Type', 'text/html'), ('Charset', 'UTF-8')]
    start_response(status, header_http)
    return [set_header_html(var), body.respond(), footer.respond()]
开发者ID:antoinefarnault,项目名称:pyson,代码行数:14,代码来源:framelib.py

示例9: genConnections

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
    def genConnections(self, appname, platform, outdir):
        outfn = os.path.join(outdir, appname + '-connections.xml')
        f = open(outfn, "w")

        model = Bunch(messages = self.inputMessages, messageKeys=self.inputMessageKeys, appPartitionName=appname + "_part")
        tmpl = Template(ConnectionTemplate, searchList=[{ "platform": platform, "model"  : model, "direction": "input"}])
        f.write("<A664PortConnections>")
        f.write(tmpl.respond())

        model = Bunch(messages = self.outputMessages, messageKeys=self.outputMessageKeys, appPartitionName=appname + "_part")
        tmpl = Template(ConnectionTemplate, searchList=[{ "platform": platform, "model"  : model, "direction": "output"}])
        f.write(tmpl.respond())
        f.write("</A664PortConnections>")
开发者ID:gongsm,项目名称:Eclipse_test,代码行数:15,代码来源:iomGenVxW.py

示例10: add_known

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
 def add_known(self, pn, *args, **kwargs):
     """Show form for editing known matches"""
     packages = KnownGood.select(KnownGood.q.fmName == pn )
     if packages.count():
         fullName = "%s/%s" % (packages[0].portageCategory,
                               packages[0].packageName)
     else:
         fullName = "No matches found!"
     template = Template('''
         <b>Edit Portage name for:</b> $pn
         <br><br>
         If a Freshmeat package name does not match,
         you can re-map it to a new Gentoo category and package name.
         <br><br>
         <table>
         <tr> <th>Existing match</th> 
         <th>New package category</th> <th>New package name</tr>
         <tr class="alt">
         <td>$fullName </td>
         <td>
         <form name='add_known' action="/known_submit" method=post>
         <input type='input' name='new_cat' value=""></td>
         <td><input type='input' name='new_pn' value=""></td>
         <input type='hidden' name='fmpn' value="$pn">
         </tr>
         </table>
         <center><input type='submit' value="Submit"></center>
         </form>''', [locals(), globals()])
     yield self.plain_page(template.respond())
开发者ID:BackupTheBerlios,项目名称:meatoo-svn,代码行数:31,代码来源:MeatooServer.py

示例11: search

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
 def search( self, searchQuery="", where="" ):
     symbols = {}
     symbols["searchQuery"] = searchQuery
     symbols["where"]       = where
     symbols["title"]       = ""
     template = Template( file=os.path.join( const.DATA_ROOT, "assets/webui/search.html.tmpl" ), searchList=symbols )
     return template.respond()
开发者ID:jansaris,项目名称:AminoPVR,代码行数:9,代码来源:webui.py

示例12: edit

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
    def edit(self, id=0):
        # we really want id as an integer. Since GET/POST parameters
        # are always passed as strings, let's convert it.
        id = int(id)

        if id > 0:
            # if an id is specified, we're editing an existing book.
            book = Book.get(id)
            title = "Edit Book"
        else:
            # if no id is specified, we're entering a new book.
            book = None
            title = "New Book"

        template = Template('''
            <h2>$title</h2>

            <form action="./store" method="POST">
                <input type="hidden" name="id" value="$id" />
                Title: <input name="title" value="$getVar('book.title', '')" /><br/>
                Author: <input name="author" value="$getVar('book.author', '')" /><br/>
                <input type="submit" value="Store" />
            </form>
        ''', [locals(), globals()])

        return template.respond()
开发者ID:padi,项目名称:pybook,代码行数:28,代码来源:test.py

示例13: ignore

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
 def ignore(self, pn, ver, *args, **kwargs):
     """Ignore particular version of pkg"""
     pkgs = Packages.select(AND(Packages.q.packageName == pn,
                           Packages.q.latestReleaseVersion == ver))
     print "PN", pn, "VER", ver
     if pkgs.count() == 0:
         yield self.error_form("Package not ignored.")
     pkg = pkgs[0]
     template = Template('''
         <form method="get" action="/ignore_action/">
         <div>
         <b>Ignore version $pkg.latestReleaseVersion of $pkg.packageName</b>
         <br>
         <br>This will ignore this particular freshmeat release version,
         <b>not</b> the entire pacakge.</b><br><br>
         Freshmeat Release Date: $pkg.latestReleaseDate<br><br>
         <a href="http://packages.gentoo.org/search/?sstring=$pkg.packageName">
         $pkg.portageCategory/$pkg.packageName-$pkg.portageVersion</a> [
         <a class="nav" href="http://freshmeat.net/projects/$pkg.packageName/"
         title="Freshmeat Latest Release">$pkg.latestReleaseVersion</a> ]
         </div><div><br />
         <input type="submit" value="Ignore" />
         <input type='hidden' name='pn' value='$pkg.packageName'>
         <input type='hidden' name='ver' value='$pkg.latestReleaseVersion'>
         </div>
         </form>
     ''', [locals(), globals()])
     content = template.respond()
     yield self.plain_page(content)
开发者ID:BackupTheBerlios,项目名称:meatoo-svn,代码行数:31,代码来源:MeatooServer.py

示例14: render_template

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
def render_template(plugin, vm, tmplname, context=None):
    # Import here to avoid having to build-dep on python-cheetah
    from   Cheetah.Template import Template
    searchList = []
    if context:
        searchList.append(context)
    searchList.append(vm)

    tmpldirs = [os.path.expanduser('~/.vmbuilder/%s'),
                os.path.dirname(__file__) + '/plugins/%s/templates',
                '/etc/vmbuilder/%s']

    if vm.templates:
        tmpldirs.insert(0,'%s/%%s' % vm.templates)
    
    tmpldirs = [dir % plugin for dir in tmpldirs]

    for dir in tmpldirs:
        tmplfile = '%s/%s.tmpl' % (dir, tmplname)
        if os.path.exists(tmplfile):
            t = Template(file=tmplfile, searchList=searchList)
            output = t.respond()
            logging.debug('Output from template \'%s\': %s' % (tmplfile, output))
            return output

    raise VMBuilderException('Template %s.tmpl not found in any of %s' % (tmplname, ', '.join(tmpldirs)))
开发者ID:SafPlusPlus,项目名称:vmbuilder,代码行数:28,代码来源:util.py

示例15: generate_download_script

# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import respond [as 别名]
def generate_download_script(root, arch, tmpl):
    package_name_list = get_packages_name_list(get_file_list(root, arch))

    tmpl = Template(file=tmpl, searchList={'packages':package_name_list})

    with open('install_packages.sh', 'w') as f:
        f.write(tmpl.respond())
开发者ID:baigk,项目名称:genesis,代码行数:9,代码来源:gen_ins_pkg_script.py


注:本文中的Cheetah.Template.Template.respond方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。