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

Python renderers.render函数代码示例

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

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



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

示例1: send_collaborator_added_email

def send_collaborator_added_email(request, user, submitter, project_name, role,
                                  email_recipients):
    fields = {
        'username': user.username,
        'project': project_name,
        'submitter': submitter.username,
        'role': role
    }

    subject = render(
        'email/collaborator-added.subject.txt', fields, request=request
    )

    body = render(
        'email/collaborator-added.body.txt', fields, request=request
    )

    for recipient in email_recipients:
        request.task(send_email).delay(
            subject,
            body,
            recipient=_compute_recipient(recipient),
        )

    return fields
开发者ID:mbacchi,项目名称:warehouse,代码行数:25,代码来源:__init__.py


示例2: send_email_verification_email

def send_email_verification_email(request, user, email):
    token_service = request.find_service(ITokenService, name='email')

    token = token_service.dumps({
        "action": "email-verify",
        "email.id": email.id,
    })

    fields = {
        'token': token,
        'email_address': email.email,
        'n_hours': token_service.max_age // 60 // 60,
    }

    subject = render(
        'email/verify-email.subject.txt', fields, request=request
    )

    body = render(
        'email/verify-email.body.txt', fields, request=request
    )

    request.task(send_email).delay(
        subject,
        body,
        recipient=_compute_recipient(user, email=email.email),
    )

    return fields
开发者ID:mbacchi,项目名称:warehouse,代码行数:29,代码来源:__init__.py


示例3: send_termination_mail

def send_termination_mail(request, user):
    mailer = get_mailer(request)
    support_email = request.registry.settings.get('mail.support_email', '[email protected]')
    site_name = request.registry.settings.get("site.name", "eduID")

    context = {
        'support_mail': support_email,
        'displayName': user.get_display_name()
    }

    message = Message(
        subject=_("{site_name} account termination").format(
            site_name=site_name),
        sender=request.registry.settings.get("mail.default_sender"),
        recipients=[user.get_mail()],
        body=render(
            "templates/termination_email.txt.jinja2",
            context,
            request,
        ),
        html=render(
            "templates/termination_email.html.jinja2",
            context,
            request,
        ),
    )

    # Development
    if request.registry.settings.get("development", '') == 'true':
        print message.body
    else:
        mailer.send(message)
    log.debug("Sent termination mail to user {!r} with address {!s}.".format(user, user.get_mail()))
    request.stats.count('dashboard/email_send_termination_mail', 1)
开发者ID:enriquepablo,项目名称:eduid-dashboard,代码行数:34,代码来源:emails.py


示例4: generate

def generate(request, user):
    """
    Generate an email for a user password reset request.

    :param request: the current request
    :type request: pyramid.request.Request
    :param user: the user to whom to send the reset code
    :type user: h.models.User

    :returns: a 4-element tuple containing: recipients, subject, text, html
    """
    serializer = request.registry.password_reset_serializer
    code = serializer.dumps(user.username)
    context = {
        'username': user.username,
        'reset_code': code,
        'reset_link': request.route_url('account_reset_with_code', code=code)
    }

    subject = _('Reset your password')

    text = render('h:templates/emails/reset_password.txt.jinja2',
                  context,
                  request=request)
    html = render('h:templates/emails/reset_password.html.jinja2',
                  context,
                  request=request)

    return [user.email], subject, text, html
开发者ID:gnott,项目名称:h,代码行数:29,代码来源:reset_password.py


示例5: send_verification_mail

def send_verification_mail(request, email, code=None):
    mailer = get_mailer(request)
    if code is None:
        code = new_verification_code(request, "mailAliases", email, request.context.user, hasher=get_short_hash)

    verification_link = generate_verification_link(request, code, "mailAliases")

    site_name = request.registry.settings.get("site.name", "eduID")

    context = {
        "email": email,
        "verification_link": verification_link,
        "site_url": request.context.safe_route_url("home"),
        "site_name": site_name,
        "code": code,
    }

    message = Message(
        subject=_("{site_name} confirmation email").format(site_name=site_name),
        sender=request.registry.settings.get("mail.default_sender"),
        recipients=[email],
        body=render("templates/verification_email.txt.jinja2", context, request),
        html=render("templates/verification_email.html.jinja2", context, request),
    )

    mailer.send(message)
开发者ID:Ratler,项目名称:eduid-dashboard,代码行数:26,代码来源:emails.py


示例6: testRenderInlineCached

    def testRenderInlineCached(self):
        self.config.add_renderer(name='chart',
                                 factory='chartfood.InlineChartRenderer')

        cache = DummyCache()

        rendered = render('chart', {'datasource_url': 'http://test.com/data',
                                    'cache': cache,
                                    'container_id': 'foo'})
        expected = '\n'.join((
            self.inline_prefix,
            "      containerId: 'foo',",
            "      chartType: 'LineChart',",
            "      dataSourceUrl: 'http://test.com/data',",
            self.inline_postfix))
        self.assertEqual(rendered, expected)

        cache['http://test.com/data'] = self.day_score

        rendered = render('chart', {'datasource_url': 'http://test.com/data',
                                    'cache': cache,
                                    'container_id': 'foo'})
        expected = '\n'.join((
            self.inline_prefix,
            "      containerId: 'foo',",
            "      chartType: 'LineChart',",
            "      dataTable: {},".format(self.day_score_json),
            self.inline_postfix))
        self.assertEqual(rendered, expected)
开发者ID:pib,项目名称:chartfood,代码行数:29,代码来源:renderer_test.py


示例7: test_with_request_content_type_notset

 def test_with_request_content_type_notset(self):
     from pyramid.renderers import render
     from mootiro_web.crypto import enable_crypto
     enable_crypto(self.config, rsa_key=self.rsa_key)
     request = testing.DummyRequest()
     render('json.encrypted', {'a': 1}, request)
     self.assertEqual(request.response.content_type, 'application/json')
开发者ID:it3s,项目名称:mootiro_web,代码行数:7,代码来源:test_crypto.py


示例8: email_preview

def email_preview(context, request):
    notification_email_data = {
        'document_title': 'A very important article',
        'document_path': 'http://example.com/article?some-long=query',
        'parent_text': 'This is the parent comment',
        'parent_user': 'toby',
        'parent_tags': 'comment, important, news',
        'parent_timestamp': datetime.now() - timedelta(hours=1),
        'parent_user_profile': 'https://hypothes.is/u/toby',
        'parent_path': 'https://hypothes.is/a/123456789',
        'reply_text': 'This is a reply to the parent comment',
        'reply_user': 'anna',
        'reply_timestamp': datetime.now(),
        'reply_user_profile': 'https://hypothes.is/u/anna',
        'reply_path': 'http://hypothes.is/a/abcdefghijk',
    }

    return {
        'emails': (
            {
                'title': 'Notification Email',
                'subject': render(ReplyTemplate.subject,
                                  notification_email_data, request),
                'text': render(ReplyTemplate.text_template,
                               notification_email_data, request),
                'html': render(ReplyTemplate.html_template,
                               notification_email_data, request),
            },
        )
    }
开发者ID:RichardLitt,项目名称:h,代码行数:30,代码来源:testing.py


示例9: start

    def start(self, context, request, appstruct, **kw):
        user = get_current()
        source = appstruct['source']
        targets = appstruct['targets']
        if can_access(user, source) and all(can_access(user, target)
                                            for target in targets):
            diff_bodies = {}
            source_view = renderers.render(
                source.templates.get('diff', None),
                {'object': source},
                request)

            for target in targets:
                target_view = renderers.render(
                    target.templates.get('diff', None),
                    {'object': target},
                    request)
                soupt, textdiff = html_diff_wrapper.render_html_diff(
                    source_view, target_view)
                diff_bodies[target] = (textdiff, get_oid(target))

            return {'context_view': source_view,
                    'contents': diff_bodies}

        return {}
开发者ID:ecreall,项目名称:lagendacommun,代码行数:25,代码来源:behaviors.py


示例10: password_reminder

def password_reminder(email, request):
    """
    For an email address, find the corresponding team and send a password
    reset token. If no team is found send an email that no user was found for
    this address.
    """
    mailer = get_mailer(request)
    team = DBSession.query(Team).filter(Team.email == email).first()
    if team:
        # send mail with reset token
        team.reset_token = random_token()
        html = render('mail_password_reset_valid.mako', {'team': team},
                      request=request)
        recipients = [team.email]
    else:
        # send mail with information that no team was found for that address.
        html = render('mail_password_reset_invalid.mako', {'email': email},
                      request=request)
        recipients = [email]
    competition = request.registry.settings['competition_title']
    message = Message(subject="Password Reset for %s" % competition,
                      recipients=recipients,
                      html=html,
                      )
    mailer.send(message)
    return team
开发者ID:Immortalem,项目名称:fluxscoreboard,代码行数:26,代码来源:team.py


示例11: _add_modal

    def _add_modal(self, explanations, process, soup, tag, context, request):
        context_oid = get_oid(context)
        dace_ui_api = get_current_registry().getUtility(IDaceUIAPI,
        	                                            'dace_ui_api')
        explanationitemaction = None
        explanationitem_actions = process.get_actions('explanationitem')
        if explanationitem_actions:
            explanationitemaction = explanationitem_actions[0]

        if explanationitemaction:
            values = {'url': request.resource_url(context, '@@explanationjson', 
                                            query={'op': 'getform',
                                                   'itemid': tag['data-item']}),
                     'item': explanations[tag['data-item']],
                     }
            body = renderers.render(self.explanation_template, values, request)
            explanation_item_soup = BeautifulSoup(body)
            actionurl_update = dace_ui_api.updateaction_viewurl(
                                request=request,
                                action_uid=str(get_oid(explanationitemaction)),
                                context_uid=str(context_oid))
            values = {'url': actionurl_update,
                     'item': explanations[tag['data-item']],
                    }
            modal_body = renderers.render(self.modal_template, values, request)
            explanation_item_modal_soup = BeautifulSoup(modal_body)
            soup.body.append(explanation_item_modal_soup.body)
            tag.append(explanation_item_soup.body)
            tag.body.unwrap()
开发者ID:ecreall,项目名称:nova-ideo,代码行数:29,代码来源:amendment_viewer.py


示例12: send_password_reset_email

def send_password_reset_email(request, user):
    token_service = request.find_service(ITokenService, name='password')

    token = token_service.dumps({
        'action': 'password-reset',
        'user.id': str(user.id),
        'user.last_login': str(user.last_login),
        'user.password_date': str(user.password_date),
    })

    fields = {
        'token': token,
        'username': user.username,
        'n_hours': token_service.max_age // 60 // 60,
    }

    subject = render(
        'email/password-reset.subject.txt',
        fields,
        request=request,
    )

    body = render(
        'email/password-reset.body.txt',
        fields,
        request=request,
    )

    request.task(send_email).delay(body, [user.email], subject)

    # Return the fields we used, in case we need to show any of them to the
    # user
    return fields
开发者ID:gsb-eng,项目名称:warehouse,代码行数:33,代码来源:email.py


示例13: repr_filter

def repr_filter(filter_data, request, template_type='default'):
    filter_schema = FilterSchema()
    global_template = FILTER_TEMPLATES['global'][template_type]
    filter_template = FILTER_TEMPLATES['filter'][template_type]
    all_filters = []
    for filter_ in filter_data:
        filter_values = []
        for child in filter_schema.children:
            name = child.name
            value = filter_.get(name, _marker)
            if hasattr(child, 'repr_value') and \
               value is not _marker:
                filter_values.append(
                    child.repr_value(
                        value, request, template_type))

        values = {'bodies': filter_values}
        all_filters.append(renderers.render(
            filter_template,
            values, request))

    values = {'bodies': all_filters}
    body = renderers.render(
        global_template,
        values, request)
    return body
开发者ID:ecreall,项目名称:nova-ideo,代码行数:26,代码来源:__init__.py


示例14: test_render

 def test_render(self):
     from pyramid.renderers import render
     from mootiro_web.crypto import enable_crypto
     enable_crypto(self.config, rsa_key=self.rsa_key)
     result_normal = render('json', {'a': 1})
     result_encrypted = render('json.encrypted', {'a': 1})
     self.assertNotEqual(result_normal, result_encrypted)
开发者ID:it3s,项目名称:mootiro_web,代码行数:7,代码来源:test_crypto.py


示例15: export_chat

def export_chat(chat_id: int, user_id: int):
    settings = app.conf["PYRAMID_REGISTRY"].settings
    log.info("Starting export for chat %s, user %s." % (chat_id, user_id))
    with db_session() as db, TemporaryDirectory() as workspace:
        start_time    = datetime.datetime.now()
        chat          = db.query(Chat).filter(Chat.id == chat_id).one()
        user          = db.query(User).filter(User.id == user_id).one()
        try:
            chat_user = db.query(ChatUser).filter(and_(ChatUser.chat_id == chat_id, ChatUser.user_id == user_id)).one()
        except NoResultFound:
            # ChatUser has probably been deleted since the export was triggered.
            delete_expired_export.apply_async((chat_id, user_id), countdown=5)
            raise

        chat_export   = db.query(ChatExport).filter(and_(ChatExport.chat_id == chat_id, ChatExport.user_id == user_id)).one()
        if export_chat.request.id and chat_export.celery_task_id != export_chat.request.id:
            raise RuntimeError("Current task ID doesn't match value in database.")

        message_count = db.query(func.count("*")).select_from(Message).filter(Message.chat_id == chat_id).scalar()
        page_count    = int(math.ceil(message_count/MESSAGES_PER_PAGE))

        filename = "%s.zip" % chat.url
        file_in_workspace = os.path.join(workspace, filename)

        with ZipFile(file_in_workspace, "w", ZIP_DEFLATED) as f:

            f.write(resource_filename("cherubplay", "static/cherubplay2.css"), "cherubplay2.css")
            f.write(resource_filename("cherubplay", "static/logo.png"), "logo.png")

            for n in range(page_count):
                log.info("Processing page %s of %s." % (n+1, page_count))
                messages = (
                    db.query(Message)
                    .filter(Message.chat_id == chat_id)
                    .order_by(Message.id)
                    .offset(n * MESSAGES_PER_PAGE).limit(MESSAGES_PER_PAGE).all()
                )
                f.writestr("%s.html" % (n+1), render("export/chat.mako", {
                    "chat": chat,
                    "user": user,
                    "chat_user": chat_user,
                    "messages": messages,
                    "current_page": n+1,
                    "messages_per_page": MESSAGES_PER_PAGE,
                    "message_count": message_count,
                }))
                f.writestr("%s.json" % (n+1), render("json", messages))

            f.writestr("chat.json",      render("json", chat))
            f.writestr("chat_user.json", render("json", chat_user))

        chat_export.filename = filename

        chat_export.generated = start_time
        chat_export.expires   = datetime.datetime.now() + datetime.timedelta(int(settings["export.expiry_days"]))

        pathlib.Path(os.path.join(app.conf["PYRAMID_REGISTRY"].settings["export.destination"], chat_export.file_directory)).mkdir(parents=True, exist_ok=True)
        os.rename(file_in_workspace, os.path.join(app.conf["PYRAMID_REGISTRY"].settings["export.destination"], chat_export.file_path))

        log.info("Finished export for chat %s, user %s." % (chat_id, user_id))
开发者ID:tehdragonfly,项目名称:cherubplay,代码行数:60,代码来源:__init__.py


示例16: columns

def columns(context, request, *args, **kwargs):
    api = kwargs['api']
    group_name = kwargs['group_name']
    util = request.registry.getUtility(IViewGroup, name = group_name)
    response = {}

    #Col 1
    col_one_name = kwargs['col_one'] #Required
    col_one_va = util.get(col_one_name, None)
    if col_one_va:
        response['column_one'] = col_one_va(context, request, api = api)
    else:
        response['column_one'] = "Error: Can't find view action '%s' in group '%s'." % (col_one_name, group_name)

    #Col 2
    col_two_name = kwargs.get('col_two', None)
    if not col_two_name:
        return render('../templates/snippets/one_column.pt', response, request = request)

    col_two_va = util.get(col_two_name, None)
    if col_two_va:
        response['column_two'] = col_two_va(context, request, api = api)
    else:
        response['column_two'] = "Error: Can't find view action '%s' in group '%s'." % (col_two_name, group_name)
    return render('../templates/snippets/two_columns.pt', response, request = request)
开发者ID:tobsan,项目名称:voteit.core,代码行数:25,代码来源:main.py


示例17: main_view

def main_view(context, request):
    """
    Main site page view. Renders main template with angularjs app.
    It returns to renderer only number of checked presentations
    """
    if request.method == 'GET':
        return Response(
            render('templates/index.pt', {'count': context.count}, request))

    settings = request.registry.settings

    rule = request.POST.get('check_rule', None)
    validation_error = validate_rule(rule)
    if validation_error:
        request.response.status_code = 400
        return Response(render('json', validation_error, request))

    max_allowed_size = int(settings.get('max_allowed_size', 15000000))
    upload_file = request.POST.get('file', None)
    validation_error = validate_upload_file(upload_file, max_allowed_size)
    if validation_error:
        request.response.status_code = 400
        return Response(render('json', validation_error, request))

    jobs_manager = settings['jobs_manager']
    info = jobs_manager.add_new_job(upload_file.file, rule)
    request.response.status_code = info.pop('status_code')
    context.increment()
    return Response(render('json', info, request))
开发者ID:enkidulan,项目名称:slidelint_site,代码行数:29,代码来源:views.py


示例18: generate

def generate(request, id, email, activation_code):
    """
    Generate an email for a user signup.

    :param request: the current request
    :type request: pyramid.request.Request
    :param id: the new user's primary key ID
    :type id: int
    :param email: the new user's email address
    :type email: text
    :param activation_code: the activation code
    :type activation_code: text

    :returns: a 4-element tuple containing: recipients, subject, text, html
    """
    context = {
        "activate_link": request.route_url("activate", id=id, code=activation_code)
    }

    subject = _("Please activate your account")

    text = render("h:templates/emails/signup.txt.jinja2", context, request=request)
    html = render("h:templates/emails/signup.html.jinja2", context, request=request)

    return [email], subject, text, html
开发者ID:hypothesis,项目名称:h,代码行数:25,代码来源:signup.py


示例19: email_preview

def email_preview(context, request):
    notification_email_data = {
        'document_title': 'A very important article',
        'document_path': 'http://example.com/article?some-long=query',
        'parent_text': 'This is the parent comment',
        'parent_user': 'toby',
        'parent_tags': 'comment, important, news',
        'parent_timestamp': '17 November at 15:47',
        'parent_user_profile': 'https://hypothes.is/u/toby',
        'parent_path': 'https://hypothes.is/a/123456789',
        'reply_text': 'This is a reply to the parent comment',
        'reply_user': 'anna',
        'reply_timestamp': '23 December 2013 at 15:47',
        'reply_user_profile': 'https://hypothes.is/u/anna',
        'reply_path': 'http://hypothes.is/a/abcdefghijk',
    }

    return {
        'emails': (
            {
                'title': 'Notification Email',
                'subject': render(reply_template.SUBJECT_TEMPLATE,
                                  notification_email_data,
                                  request),
                'text': render(reply_template.TXT_TEMPLATE,
                               notification_email_data,
                               request),
                'html': render(reply_template.HTML_TEMPLATE,
                               notification_email_data,
                               request),
            },
        )
    }
开发者ID:ningyifan,项目名称:h,代码行数:33,代码来源:testing.py


示例20: generate

 def generate():
     achievements = Achievement.get_achievements_by_user_for_today(user)
     
     def ea(achievement):
         try:
             #print "evaluating "+`achievement["id"]`
             return Achievement.evaluate(user, achievement["id"])
         except FormularEvaluationException as e:
             return { "error": "Cannot evaluate formular: " + e.message, "id" : achievement["id"] }
         except Exception as e:
             tb = traceback.format_exc()
             return { "error": tb, "id" : achievement["id"] }
         
     check = lambda x : x!=None and not x.has_key("error") and (x["hidden"]==False or x["level"]>0)
     
     evaluatelist = [ea(achievement) for achievement in achievements]
     
     ret = {
         "achievements" : {
             x["id"] : x for x in evaluatelist if check(x) 
         },
         "achievement_errors" : {
             x["id"] : x for x in evaluatelist if x!=None and x.has_key("error") 
         }
     }
     
     if return_object:
         return render("json",ret),ret
     else:
         return render("json",ret)
开发者ID:Jandersolutions,项目名称:gamification-engine,代码行数:30,代码来源:views.py



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
Python renderers.render_to_response函数代码示例发布时间:2022-05-27
下一篇:
Python renderers.get_renderer函数代码示例发布时间:2022-05-27
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

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

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

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