• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python chameleon_zpt.render_template_to_response函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中repoze.bfg.chameleon_zpt.render_template_to_response函数的典型用法代码示例。如果您正苦于以下问题:Python render_template_to_response函数的具体用法?Python render_template_to_response怎么用?Python render_template_to_response使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



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

示例1: handle_submit

    def handle_submit(self, converted):
        try:
            context = self.context
            request = self.request
            key = request.params.get('key')
            if not key or len(key) != 40:
                e = ResetFailed()
                e.page_title = 'Password Reset URL Problem'
                raise e
            users = find_users(context)
            user = users.get_by_login(converted['login'])
            if user is None:
                # XXX should be part of form validation
                raise Exception(login='No such user account exists')
            userid = user.get('id')
            if userid is None:
                userid = user['login']

            profiles = find_profiles(context)
            profile = profiles.get(userid)
            if profile is None:
                # XXX should be part of form validation
                raise Exception(login='No such profile exists')

            if key != getattr(profile, 'password_reset_key', None):
                e = ResetFailed()
                e.page_title = 'Password Reset Confirmation Problem'
                raise e

            now = datetime.datetime.now()
            t = getattr(profile, 'password_reset_time', None)
            if t is None or now - t > max_reset_timedelta:
                e = ResetFailed()
                e.page_title = 'Password Reset Confirmation Key Expired'
                raise e

            # The key matched.  Clear the key and reset the password.
            profile.password_reset_key = None
            profile.password_reset_time = None
            password = converted['password'].encode('UTF-8')
            users.change_password(userid, password)

            page_title = 'Password Reset Complete'
            api = request.api
            api.page_title = page_title
            return render_template_to_response(
                'templates/reset_complete.pt',
                api=api,
                login=converted['login'],
                password=converted['password'],
                )

        except ResetFailed, e:
            api = request.api
            api.page_title = e.page_title
            return render_template_to_response('templates/reset_failed.pt',
                                               api=api)
开发者ID:amarandon,项目名称:opencore,代码行数:57,代码来源:people.py


示例2: __call__

    def __call__(self, environ, start_response):

        req = Request(environ)
        try:
            resp = req.get_response(self.app)
        except:
            # General failures get wrapped into a General KARL Error
            static_url = req.relative_url(self._static_url, to_application=True)
            home_url = req.relative_url(self._home_url, to_application=True)
            if self._errorlog_url is None:
                errorlog_url = None
            else:
                errorlog_url = req.relative_url(
                    self._errorlog_url, to_application=True
                )

            traceback_info = format_exc()
            resp = render_template_to_response(
                'karl.views:templates/wsgi_errormsg.pt',
                error_message='General Error',
                error_text=GENERAL_MESSAGE %
                           {'system_name': self._system_name},
                static_url=static_url,
                errorlog_url=errorlog_url,
                home_url=home_url,
                traceback_info=traceback_info,
                )
            resp.status = 500
            return resp(environ, start_response)

        status = resp.status_int
        if status in (404, 500):
            static_url = req.relative_url(self._static_url, to_application=True)
            home_url = req.relative_url(self._home_url, to_application=True)
            if self._errorlog_url is None:
                errorlog_url = None
            else:
                errorlog_url = req.relative_url(
                    self._errorlog_url, to_application=True
                )
            error_text = NOTFOUND_MESSAGE if status == 404 else GENERAL_MESSAGE
            error_text %= {'system_name': self._system_name}
            resp = render_template_to_response(
                'karl.views:templates/wsgi_errormsg.pt',
                error_message='Not Found',
                static_url=static_url,
                error_text=error_text,
                home_url=home_url,
                errorlog_url=errorlog_url,
                traceback_info=None,
                )
            resp.status = status
            return resp(environ, start_response)

        return resp(environ, start_response)
开发者ID:boothead,项目名称:karl,代码行数:55,代码来源:errorpage.py


示例3: handle_submit

    def handle_submit(self, converted):
        try:
            context = self.context
            request = self.request
            key = request.params.get("key")
            if not key or len(key) != 40:
                e = ResetFailed()
                e.page_title = "Password Reset URL Problem"
                raise e
            users = find_users(context)
            user = users.get_by_login(converted["login"])
            if user is None:
                raise ValidationError(login="No such user account exists")
            userid = user.get("id")
            if userid is None:
                userid = user["login"]

            profiles = find_profiles(context)
            profile = profiles.get(userid)
            if profile is None:
                raise ValidationError(login="No such profile exists")

            if key != getattr(profile, "password_reset_key", None):
                e = ResetFailed()
                e.page_title = "Password Reset Confirmation Problem"
                raise e

            now = datetime.datetime.now()
            t = getattr(profile, "password_reset_time", None)
            if t is None or now - t > max_reset_timedelta:
                e = ResetFailed()
                e.page_title = "Password Reset Confirmation Key Expired"
                raise e

            # The key matched.  Clear the key and reset the password.
            profile.password_reset_key = None
            profile.password_reset_time = None
            password = converted["password"].encode("UTF-8")
            users.change_password(userid, password)

            page_title = "Password Reset Complete"
            api = TemplateAPI(context, request, page_title)
            return render_template_to_response(
                "templates/reset_complete.pt", api=api, login=converted["login"], password=converted["password"]
            )

        except ResetFailed, e:
            api = TemplateAPI(context, request, e.page_title)
            return render_template_to_response("templates/reset_failed.pt", api=api)
开发者ID:reebalazs,项目名称:karl,代码行数:49,代码来源:resetpassword.py


示例4: stats

def stats(context, request):
    me = sys.argv[0]
    me = os.path.abspath(me)
    sandbox = os.path.dirname(os.path.dirname(me))
    outfile_path = os.path.join(sandbox, 'var/stats/', 'stats.csv')
    f = open(outfile_path, 'r')
    lines = f.readlines()
    resp_out = ""
    line_arrays = []
    for line in lines:
        resp_out = resp_out + line + "<br/>"
        line2 = line
        myarr = line2.split(",")
        line_arrays.append(myarr)
    
    page_title = 'Admin Statistics'
    api = TemplateAPI(context, request, page_title)

    return render_template_to_response(
        'templates/stats.pt',
        api = api,
        stats = resp_out,
        comms = line_arrays,
        )

    
    return Response(resp_out)
开发者ID:boothead,项目名称:karl,代码行数:27,代码来源:stats.py


示例5: login_view

def login_view(context, request):

    system_name = get_setting(context, 'system_name', 'KARL')

    page_title = '' # Per #366377, don't say what screen
    api = TemplateAPI(context, request, page_title)

    came_from = request.params.get('came_from', request.url)

    if came_from.endswith('login.html'):
        came_from = came_from[:-len('login.html')]
    elif came_from.endswith('logout.html'):
        came_from = came_from[:-len('logout.html')]

    api.status_message = status_message=request.params.get('reason', None)
    response = render_template_to_response(
        'templates/login.pt',
        api=api,
        came_from=came_from,
        nothing='',
        app_url=request.application_url,
        )
    plugins = request.environ.get('repoze.who.plugins', {})
    auth_tkt = plugins.get('auth_tkt')
    if auth_tkt is not None:
        forget_headers = auth_tkt.forget(request.environ, {})
        response.headers.update(forget_headers)
    return response
开发者ID:boothead,项目名称:karl,代码行数:28,代码来源:login.py


示例6: delete_profile_view

def delete_profile_view(context, request):

    confirm = request.params.get('confirm')
    if confirm:
        parent = context.__parent__
        name = context.__name__
        find_users(context).remove(name)
        del parent[name]

        if authenticated_userid(request) == name:
            return logout_view(context, request, reason='User removed')
        query = {'status_message': 'Deleted profile: %s' % name}
        location = model_url(parent, request, query=query)

        return HTTPFound(location=location)

    page_title = 'Delete Profile for %s %s' % (context.firstname,
                                               context.lastname)
    api = TemplateAPI(context, request, page_title)

    # Get a layout
    return render_template_to_response(
        'templates/delete_profile.pt',
        api=api,
        )
开发者ID:boothead,项目名称:karl,代码行数:25,代码来源:people.py


示例7: stats

def stats(context, request):
    """
    This appears to no longer be in use.  If we can't confirm someone is using
    it after some period of time we shoudl probably get rid of it.
    --rossi 5/5/2011
    """
    me = sys.argv[0]
    me = os.path.abspath(me)
    sandbox = os.path.dirname(os.path.dirname(me))
    outfile_path = os.path.join(sandbox, 'var/stats/', 'stats.csv')
    if not os.path.exists(outfile_path):
        raise NotFound
    f = open(outfile_path, 'r')
    lines = f.readlines()
    resp_out = ""
    line_arrays = []
    for line in lines:
        resp_out = resp_out + line + "<br/>"
        line2 = line
        myarr = line2.split(",")
        line_arrays.append(myarr)

    page_title = 'Admin Statistics'
    api = TemplateAPI(context, request, page_title)

    return render_template_to_response(
        'templates/stats.pt',
        api = api,
        stats = resp_out,
        comms = line_arrays,
        )
开发者ID:cguardia,项目名称:karl,代码行数:31,代码来源:stats.py


示例8: view_pw_reset

def view_pw_reset(context, request):
    
    # Second step: User is visiting reset url
    if 'key' in request.params:
        key = request.params['key']
        
        if 'form.submitted' in request.params:
            try:
                # FormEncode validation
                schema = PWResetSchema()
                form_result = schema.to_python(request.params)
            except formencode.validators.Invalid, why:
                form = render_template('templates/password_reset.pt', request=request, api=TemplateAPI(request))
                # FormEncode fills template with error messages
                form = htmlfill.render(form, defaults=request.params, errors=why.error_dict)
                return Response(form)
            else:
                session = DBSession()
                user = session.query(User).filter_by(email=form_result['email']).one()
                if key == user.password_reset_key():
                    user.password = '{SHA}%s' % sha.new(form_result['password'].encode('utf-8')).hexdigest()
                    # Login directly
                    headers = []
                    plugins = request.environ.get('repoze.who.plugins', {})
                    identifier = plugins.get('auth_tkt')
                    if identifier:
                        identity = {'repoze.who.userid': form_result['email']}
                        headers = identifier.remember(request.environ, identity)
                    request.environ['repoze.who.userid'] = form_result['email']
                    return HTTPFound(location = model_url(context, request), headers=headers)
                else:
                    statusmessage.show(request, u"Retrieve request not valid.", u"error")
        
        return render_template_to_response('templates/password_reset.pt', request=request, api=TemplateAPI(request))
开发者ID:FvD,项目名称:cobal.eportfolio,代码行数:34,代码来源:pw_reset.py


示例9: calendar_setup_view

def calendar_setup_view(context, request):
    default_category_name = ICalendarCategory.getTaggedValue('default_name')
    categories = filter(lambda x: x.__name__ != default_category_name,
                        _get_calendar_categories(context))

    default_layer_name = ICalendarLayer.getTaggedValue('default_name')
    layers = filter(lambda x: x.__name__ != default_layer_name,
                    _get_calendar_layers(context))

    fielderrors = {}
    fielderrors_target = None

    page_title = 'Calendar Setup'
    api = TemplateAPI(context, request, page_title)

    return render_template_to_response(
        'templates/calendar_setup.pt',
        back_to_calendar_url=model_url(context, request),
        categories_url=model_url(context, request, 'categories.html'),
        layers_url=model_url(context, request, 'layers.html'),
        formfields=api.formfields,
        fielderrors=fielderrors,
        fielderrors_target = fielderrors_target,
        api=api,
        editable_categories = categories,
        editable_layers = layers,
        all_categories = _get_all_calendar_categories(context, request),
        colors = _COLORS,
        )
开发者ID:reebalazs,项目名称:karl,代码行数:29,代码来源:calendar_events.py


示例10: forbidden

def forbidden(context, request):
    site = find_site(context)
    environ = request.environ
    referrer = environ.get('HTTP_REFERER', '')
    if 'repoze.who.identity' in environ:
        # the user is authenticated but he is not allowed to access this
        # resource
        api = TemplateAPI(context, request, 'Forbidden')
        response =  render_template_to_response(
            'templates/forbidden.pt',
            api=api,
            login_form_url = model_url(site, request, 'login.html'),
            homepage_url = model_url(site, request),
            )
        response.status = '403 Forbidden'
        return response
    elif '/login.html' in referrer:
        url = request.url
        # this request came from a user submitting the login form
        login_url = model_url(site, request, 'login.html',
                              query={'reason':'Bad username or password',
                                     'came_from':url})
        return HTTPFound(location=login_url)
    else:
        # the user is not authenticated and did not come in as a result of
        # submitting the login form
        url = request.url
        query = {'came_from':url}
        while url.endswith('/'):
            url = url[:-1]
        if url != request.application_url: # if request isnt for homepage
            query['reason'] = 'Not logged in'
        login_url = model_url(site, request, 'login.html', query=query)
        return HTTPFound(location=login_url)
开发者ID:boothead,项目名称:karl,代码行数:34,代码来源:forbidden.py


示例11: viewall_referencemanual_view

def viewall_referencemanual_view(context, request):

    backto = {
        'href': model_url(context.__parent__, request),
        'title': context.__parent__.title,
        }

    page_title = context.title
    api = TemplateAPI(context, request, page_title)

    # Get a layout
    layout_provider = get_layout_provider(context, request)
    layout = layout_provider('intranet')

    # provide client data for rendering current tags in the tagbox
    client_json_data = dict(
        tagbox = get_tags_client_data(context, request),
        )

    return render_template_to_response(
        'templates/viewall_referencemanual.pt',
        api=api,
        actions=[],
        head_data=convert_to_script(client_json_data),
        sections=_get_viewall(context, request, api),
        backto=backto,
        layout=layout,
        )
开发者ID:boothead,项目名称:karl,代码行数:28,代码来源:references.py


示例12: report_view

def report_view(context, request):
    client_json_data = {
        'grid_data': get_grid_data(context, request),
        }
    api = TemplateAPI(context, request, context.title)
    peopledir = find_peopledirectory(context)
    section = context.__parent__
    peopledir_tabs = get_tabs(peopledir, request, section.__name__)

    mgr = ILetterManager(context)
    letter_info = mgr.get_info(request)
    kw, qualifiers = get_search_qualifiers(request)

    descriptions = get_report_descriptions(context)
    print_url = model_url(context, request, 'print.html', **kw)
    csv_url = model_url(context, request, 'csv', **kw)
    pictures_url = model_url(context, request, 'picture_view.html', **kw)
    opensearch_url = model_url(context, request, 'opensearch.xml')

    return render_template_to_response(
        'templates/people_report.pt',
        api=api,
        peopledir=peopledir,
        peopledir_tabs=peopledir_tabs,
        head_data=convert_to_script(client_json_data),
        descriptions=descriptions,
        letters=letter_info,
        print_url=print_url,
        csv_url=csv_url,
        pictures_url=pictures_url,
        qualifiers=qualifiers,
        opensearch_url=opensearch_url,
        actions=get_actions(context, request),
        )
开发者ID:boothead,项目名称:karl,代码行数:34,代码来源:peopledirectory.py


示例13: _add_existing_users

def _add_existing_users(context, community, profiles, text, request, status=None):
    users = find_users(community)
    for profile in profiles:
        group_name = community.members_group_name
        user_name = profile.__name__
        users.add_group(user_name, group_name)

    # Generate HTML and text mail messages and send a mail for
    # each user added to the community.
    community_href = model_url(community, request)
    _send_aeu_emails(community, community_href, profiles, text)

    # We delivered invitation messages to each user.  Redirect to
    # Manage Members with a status message.
    n = len(profiles)
    if n == 1:
        msg = 'One member added and email sent.'
    else:
        fmt = '%s members added and emails sent.'
        msg = fmt % len(profiles)
    if status:
        msg = msg + ' ' + status    
    if request.POST.get('return_to') is not None:
        location  = request.POST['return_to']
        return render_template_to_response('templates/javascript_redirect.pt', 
                url=location)

    else:
        location = model_url(context, request, 'manage.html',
                             query={'status_message': msg})
        return HTTPFound(location=location)
开发者ID:amarandon,项目名称:opencore,代码行数:31,代码来源:members.py


示例14: blog_post_view

def blog_post_view(context, request):
    result = {}
    obj = context
    dc = obj.metadata.get('dublin',{})
    result['title'] = dc.get('title', obj.__name__)
    result['description'] = dc.get('description', '')
    result['url'] = obj.__name__
    result['created'] = dc.get('created', '')
    result['creator'] = dc.get('creators', [])[0]

    pachs = request.url.split('/')
    img_url =  '/'.join(pachs[0:len(pachs)-2]) + '/img/'

    result['body'] = IHTMLRenderer(obj).html().replace('src="img/', 'src="%s' % img_url)
    tabs = render_tabs(context,request)

    settings = queryUtility(ISettings)
    idcomments_acct = str(getattr(settings, 'idcomments_acct', ''))
    return render_template_to_response('templates/blogpost.pt',
            title = dc.get('title', context.__name__),
            result = result,
            tabs = tabs,
            post_created = getDisplayTime(result['created']),
            idcomments_acct = idcomments_acct,
            )
开发者ID:BGCX261,项目名称:zopen-cms-svn-to-git,代码行数:25,代码来源:blog_views.py


示例15: syslog_view

def syslog_view(context, request):
    syslog_path = get_setting(context, 'syslog_view')
    instances = get_setting(context, 'syslog_view_instances', ['karl'])
    filter_instance = request.params.get('instance', '_any')
    if filter_instance == '_any':
        filter_instances = instances
    else:
        filter_instances = [filter_instance]

    entries = []
    with codecs.open(syslog_path, encoding='utf-8',
                     errors='replace') as syslog:
        for line in syslog:
            line = _decode(line)
            try:
                month, day, time, host, instance, message = line.split(None, 5)
            except ValueError:
                # Ignore lines that don't fit the format
                continue

            if instance not in filter_instances:
                continue
            entries.append(line)
    entries.reverse() # Show more recent entries first

    return render_template_to_response(
        'templates/admin/syslog.pt',
        api=AdminTemplateAPI(context, request),
        menu=_menu_macro(),
        instances=instances,
        instance=filter_instance,
        entries=entries,
    )
开发者ID:boothead,项目名称:karl,代码行数:33,代码来源:admin.py


示例16: _show_calendar_view

def _show_calendar_view(context, request, make_presenter):
    year, month, day = _date_requested(context, request)
    focus_datetime = datetime.datetime(year, month, day)
    now_datetime   = _now()

    # make the calendar presenter for this view
    url_for = _make_calendar_presenter_url_func(context, request)
    calendar = make_presenter(focus_datetime,
                              now_datetime,
                              url_for)

    # find events and paint them on the calendar
    selected_layer = _calendar_filter(context, request)

    events = _get_catalog_events(context, request,
                                 first_moment=calendar.first_moment,
                                 last_moment=calendar.last_moment,
                                 layer_name=selected_layer)
    calendar.paint_events(events)

    layers    = _get_calendar_layers(context)
    setup_url = _calendar_setup_url(context, request)

    # render
    api = TemplateAPI(context, request, calendar.title)
    return render_template_to_response(
        calendar.template_filename,
        api=api,
        setup_url=setup_url,
        calendar=calendar,
        selected_layer = selected_layer,
        layers = layers,
        quote = quote,
        may_create = has_permission(CREATE, context, request),
    )
开发者ID:reebalazs,项目名称:karl,代码行数:35,代码来源:calendar_events.py


示例17: logs_view

def logs_view(context, request):
    log_paths = get_setting(context, 'logs_view')
    if len(log_paths) == 1:
        # Only one log file, just view that
        log = log_paths[0]

    else:
        # Make user pick a log file
        log = request.params.get('log', None)

        # Don't let users view arbitrary files on the filesystem
        if log not in log_paths:
            log = None

    if log is not None and os.path.exists(log):
        lines = codecs.open(log, encoding='utf-8',
                            errors='replace').readlines()
    else:
        lines = []

    return render_template_to_response(
        'templates/admin/log.pt',
        api=AdminTemplateAPI(context, request),
        menu=_menu_macro(),
        logs=log_paths,
        log=log,
        lines=lines,
    )
开发者ID:boothead,项目名称:karl,代码行数:28,代码来源:admin.py


示例18: show_profiles_view

def show_profiles_view(context, request):
    system_name = get_setting(context, "system_name", "KARL")
    page_title = "%s Profiles" % system_name
    api = TemplateAPI(context, request, page_title)

    # Grab the data for the two listings, main communities and portlet
    search = ICatalogSearch(context)

    query = dict(sort_index="title", interfaces=[IProfile], limit=5)

    titlestartswith = request.params.get("titlestartswith")
    if titlestartswith:
        query["titlestartswith"] = (titlestartswith, titlestartswith)

    num, docids, resolver = search(**query)

    profiles = []
    for docid in docids:
        model = resolver(docid)
        if model is None:
            continue
        profiles.append(model)

    mgr = ILetterManager(context)
    letter_info = mgr.get_info(request)

    return render_template_to_response("templates/profiles.pt", api=api, profiles=profiles, letters=letter_info)
开发者ID:reebalazs,项目名称:karl,代码行数:27,代码来源:people.py


示例19: retail_view

def retail_view(context, request):

    page_title = context.title
    api = TemplateAPI(context, request, page_title)

    middle_portlet_html = _get_portlet_html(context, request,
                                            context.middle_portlets)
    right_portlet_html = _get_portlet_html(context, request,
                                           context.right_portlets)
    current_intranet = api.current_intranet
    feature = getattr(find_intranets(current_intranet), 'feature', u'')

    # Rendering this separately gives us a chance later to think about
    # some kind of caching.
    body = render_template(
        'templates/intranethome_body.pt',
        current_intranet=current_intranet,
        feature=feature,
        middle_portlet_html=middle_portlet_html,
        right_portlet_html=right_portlet_html,
        )

    return render_template_to_response(
        'templates/intranet_homepage.pt',
        api=api,
        body=body,
        )
开发者ID:boothead,项目名称:karl,代码行数:27,代码来源:retail.py


示例20: handle_submit

    def handle_submit(self, validated):
        context = self.context
        request = self.request
      
        name = make_unique_name(context, validated['title'])
        creator = authenticated_userid(request)

        text = safe_html(validated['description'])
        
        topic = create_content(IForumTopic,
            validated['title'],
            text,
            creator,
            )

        if text:
            topic.description = extract_description(text)
        else:
            topic.description = validated['title']    
        context[name] = topic
      
        if request.POST.get('return_to') is not None:
            location  = request.POST['return_to']
            return render_template_to_response('templates/javascript_redirect.pt', 
                    url=location)
        else:
            location = model_url(topic, request)
            return HTTPFound(location=location)
开发者ID:amarandon,项目名称:opencore,代码行数:28,代码来源:forum.py



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python configuration.Configurator类代码示例发布时间:2022-05-26
下一篇:
Python chameleon_zpt.get_template函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap