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

Python absoluteurl.absoluteURL函数代码示例

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

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



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

示例1: test_view_data_model

 def test_view_data_model(self):
     # Test that the json request cache contains the view data model.
     pillarperson = self.getPillarPerson()
     view = create_initialized_view(pillarperson, '+index')
     bugtask = list(view.bugtasks)[0]
     bug = bugtask.bug
     cache = IJSONRequestCache(view.request)
     request = get_current_web_service_request()
     self.assertEqual({
         'self_link': absoluteURL(pillarperson.person, request),
         'displayname': pillarperson.person.displayname
     }, cache.objects.get('grantee'))
     self.assertEqual({
         'self_link': absoluteURL(pillarperson.pillar, request),
     }, cache.objects.get('pillar'))
     self.assertEqual({
         'bug_id': bug.id,
         'bug_summary': bug.title,
         'bug_importance': bugtask.importance.title.lower(),
         'information_type': bug.information_type.title,
         'web_link': canonical_url(
             bugtask, path_only_if_possible=True),
         'self_link': absoluteURL(bug, request),
     }, cache.objects.get('bugs')[0])
     if self.pillar_type == 'product':
         branch = list(view.branches)[0]
         self.assertEqual({
             'branch_id': branch.id,
             'branch_name': branch.unique_name,
             'information_type': branch.information_type.title,
             'web_link': canonical_url(branch, path_only_if_possible=True),
             'self_link': absoluteURL(branch, request),
         }, cache.objects.get('branches')[0])
开发者ID:pombreda,项目名称:UnnaturalCodeFork,代码行数:33,代码来源:test_pillar_sharing.py


示例2: unconsumedURL

def unconsumedURL(context, request):
    url = absoluteURL(context, request)
    consumed = request.annotations.get(CONSUMED_ANNOTATION_KEY)
    if not consumed:
        return url
    inserts = []
    for obj, names in consumed:
        if obj is context:
            # only calculate once
            objURL = url
        else:
            objURL = absoluteURL(obj, request)
        if not url.startswith(objURL):
            # we are further down
            break
        names = '/' + '/'.join(map(_encode, names))
        inserts.append((len(objURL), names))

    offset = 0
    for i, s in inserts:
        oi = i + offset
        pre = url[:oi]
        post = url[oi:]
        url = pre + s + post
        offset += len(s)
    return url
开发者ID:pombredanne,项目名称:z3c.traverser,代码行数:26,代码来源:traversing.py


示例3: initialize

    def initialize(self):
        self.pillar = self.context.pillar
        self.person = self.context.person

        self.label = "Information shared with %s" % self.person.displayname
        self.page_title = "%s" % self.person.displayname
        self.sharing_service = getUtility(IService, 'sharing')

        self._loadSharedArtifacts()

        cache = IJSONRequestCache(self.request)
        request = get_current_web_service_request()
        branch_data = self._build_branch_template_data(self.branches, request)
        bug_data = self._build_bug_template_data(self.bugtasks, request)
        spec_data = self._build_specification_template_data(
            self.specifications, request)
        grantee_data = {
            'displayname': self.person.displayname,
            'self_link': absoluteURL(self.person, request)
        }
        pillar_data = {
            'self_link': absoluteURL(self.pillar, request)
        }
        cache.objects['grantee'] = grantee_data
        cache.objects['pillar'] = pillar_data
        cache.objects['bugs'] = bug_data
        cache.objects['branches'] = branch_data
        cache.objects['specifications'] = spec_data
开发者ID:pombreda,项目名称:UnnaturalCodeFork,代码行数:28,代码来源:pillar.py


示例4: handleAdd

    def handleAdd(self, action):

        data, errors = self.extractData()
        if errors:
            self.status = self.formErrorsMessage
            return

        typeName = self.tileType.__name__

        # Traverse to a new tile in the context, with no data
        tile = self.context.restrictedTraverse(
            '@@%s/%s' % (typeName, self.tileId,))

        dataManager = ITileDataManager(tile)
        content = {}
        applyChanges(self, content, data)
        dataManager.set(content)

        # Look up the URL - we need to do this after we've set the data to
        # correctly account for transient tiles
        tileURL = absoluteURL(tile, self.request)
        contextURL = absoluteURL(tile.context, self.request)

        notify(ObjectCreatedEvent(tile))
        notify(ObjectAddedEvent(tile, self.context, self.tileId))

        IStatusMessage(self.request).addStatusMessage(
                _(u"Tile created at ${url}",
                  mapping={'url': tileURL}),
                type=u'info',
            )

        self.request.response.redirect(contextURL)
开发者ID:datakurre,项目名称:jyu.portfolio.layout,代码行数:33,代码来源:add-tile.py


示例5: update

    def update(self):
        """Read and validate form data, and update model if necessary.

        Also choose the correct template to render.
        """
        self.field_errors = []
        self.template = self.select_template

        if 'CANCEL' in self.request:
            self.request.response.redirect(
                absoluteURL(self.context, self.request))
            return

        if 'date' in self.request:
            try:
                self.date = parse_date(self.request['date'])
            except ValueError:
                self.error = _("Invalid date. Please use YYYY-MM-DD format.")
            else:
                self.term = getTermForDate(self.date)
                if self.term is None:
                    self.error = _("The date does not belong to any term.")
                    self.date = None

        if self.date:
            self.template = self.form_template

        if self.date and 'SUBMIT' in self.request:
            replacements = self.extractMeetings()
            if self.field_errors:
                self.error = self.field_error_message
            else:
                self.updateExceptions(replacements)
                self.request.response.redirect(
                    absoluteURL(self.context, self.request))
开发者ID:achouhans,项目名称:schooltool-2.8.5,代码行数:35,代码来源:schedule.py


示例6: handleSave

    def handleSave(self, action):
        data, errors = self.extractData()
        if errors:
            self.status = self.formErrorsMessage
            return

        typeName = self.tileType.__name__

        # Traverse to a new tile in the context, with no data
        tile = self.context.restrictedTraverse('@@%s/%s' % (typeName, self.tileId,))

        dataManager = ITileDataManager(tile)
        dataManager.set(data)

        # Look up the URL - we need to do this after we've set the data to
        # correctly account for transient tiles
        tileURL = absoluteURL(tile, self.request)
        contextURL = absoluteURL(tile.context, self.request)
        tileRelativeURL = tileURL

        if tileURL.startswith(contextURL):
            tileRelativeURL = '.' + tileURL[len(contextURL):]

        notify(ObjectModifiedEvent(tile))

        # Get the tile URL, possibly with encoded data
        IStatusMessage(self.request).addStatusMessage(_(u"Tile saved",), type=u'info')

        self.request.response.redirect(tileURL)
开发者ID:CGTIC,项目名称:Plone_SP,代码行数:29,代码来源:edit.py


示例7: jsonGranteeData

 def jsonGranteeData(self, grant_permissions):
     """See `ISharingService`."""
     result = []
     request = get_current_web_service_request()
     browser_request = IWebBrowserOriginatingRequest(request)
     # We need to precache icon and validity information for the batch.
     grantee_ids = [grantee[0].id for grantee in grant_permissions]
     list(getUtility(IPersonSet).getPrecachedPersonsFromIDs(
         grantee_ids, need_icon=True, need_validity=True))
     for (grantee, permissions, shared_artifact_types) in grant_permissions:
         some_things_shared = len(shared_artifact_types) > 0
         grantee_permissions = {}
         for (policy, permission) in permissions.iteritems():
             grantee_permissions[policy.type.name] = permission.name
         shared_artifact_type_names = [
             info_type.name for info_type in shared_artifact_types]
         display_api = ObjectImageDisplayAPI(grantee)
         icon_url = display_api.custom_icon_url()
         sprite_css = display_api.sprite_css()
         result.append({
             'name': grantee.name,
             'icon_url': icon_url,
             'sprite_css': sprite_css,
             'display_name': grantee.displayname,
             'self_link': absoluteURL(grantee, request),
             'web_link': absoluteURL(grantee, browser_request),
             'permissions': grantee_permissions,
             'shared_artifact_types': shared_artifact_type_names,
             'shared_items_exist': some_things_shared})
     return result
开发者ID:pombreda,项目名称:UnnaturalCodeFork,代码行数:30,代码来源:sharingservice.py


示例8: handleAdd

    def handleAdd(self, action):

        data, errors = self.extractData()
        if errors:
            self.status = self.formErrorsMessage
            return

        typeName = self.tileType.__name__

        context = self.context

        # Look up if our context supports tiles, if not
        # pick default view instead
        if not ILayoutAware(context, None):
            default_page_view = getMultiAdapter((context, self.request),
                                                name='default_page')
            default_page = default_page_view.getDefaultPage()
            context = default_page and context[default_page] or context
            context = ILayoutAware(context, None)

        # Traverse to a new tile in the context, with no data
        tile = context.restrictedTraverse(
            '@@%s/%s' % (typeName, self.tileId,))

        dataManager = ITileDataManager(tile)
        dataManager.set(data)

        # Look up the URL - we need to do this after we've set the data to
        # correctly account for transient tiles
        tileURL = absoluteURL(tile, self.request)
        contextURL = absoluteURL(tile.context, self.request)
        tileRelativeURL = tileURL

        if tileURL.startswith(contextURL):
            tileRelativeURL = '.' + tileURL[len(contextURL):]

        notify(ObjectCreatedEvent(tile))
        notify(ObjectAddedEvent(tile, self.context, self.tileId))

        IStatusMessage(self.request).addStatusMessage(
                _(u"Tile created at ${url}",
                  mapping={'url': tileURL}),
                type=u'info',
            )

        # Calculate the edit URL and append some data in a JSON structure,
        # to help the UI know what to do.

        url = getEditTileURL(tile, self.request)

        tileDataJson = {}
        tileDataJson['action'] = "save"
        tileDataJson['mode'] = "add"
        tileDataJson['url'] = tileRelativeURL
        tileDataJson['tile_type'] = typeName
        tileDataJson['id'] = tile.id

        url = appendJSONData(url, 'tiledata', tileDataJson)
        self.request.response.redirect(url)
开发者ID:davisagli,项目名称:plone.app.tiles,代码行数:59,代码来源:add.py


示例9: handleBack

 def handleBack(self, action):
     context = self.context.context
     quote = lambda x:urllib.quote(x.encode("utf-8"))
     self.request.response.redirect(
         u"%s/select_group?context=%s&title=%s" % (
             absoluteURL(hooks.getSiteManager(), self.request),
             absoluteURL(context, self.request),
             quote(IZopeDublinCore(context).title or context.__name__)))
开发者ID:ilshad,项目名称:tackle,代码行数:8,代码来源:edit.py


示例10: handle_submit_

 def handle_submit_(self, action):
     app = ISchoolToolApplication(None)
     persons = app['persons']
     username = self.request.get('username', '')
     person = persons.get(username, None)
     if person is not None:
         url = absoluteURL(person, self.request)
     else:
         url = absoluteURL(app, self.request)
     self.request.response.redirect(url)
     self.ajax_settings['dialog'] = 'close'
开发者ID:achouhans,项目名称:schooltool-2.8.5,代码行数:11,代码来源:person.py


示例11: values

    def values(self):
        site = hooks.getSite()

        yield {'title': u"SITE",
               'url': absoluteURL(site, self.request),
               'nesting': 0}

        for x in site.values():
            yield {'title': IZopeDublinCore(x).title or x.__name__,
                   'url': absoluteURL(x, self.request),
                   'nesting': 1}
开发者ID:ilshad,项目名称:tackle,代码行数:11,代码来源:select_context.py


示例12: update

 def update(self):
     prefix = 'setting.'
     self.status = None
     if 'UPDATE_SUBMIT' in self.request:
         for setting in self.settings():
             val = self.request.get(prefix + setting.key, 'False')
             setting.setValue(bool(val != 'False'))
         url = absoluteURL(self.context, self.request) + '/security.html'
         self.request.response.redirect(url)
     elif 'CANCEL' in self.request:
         url = absoluteURL(self.context, self.request) + '/security.html'
         self.request.response.redirect(url)
开发者ID:achouhans,项目名称:schooltool-2.8.5,代码行数:12,代码来源:views.py


示例13: nextURL

 def nextURL(self):
     if 'person_id' in self.request:
         person_id = self.request['person_id']
         app = ISchoolToolApplication(None)
         persons = app['persons']
         if person_id in persons:
             return absoluteURL(persons[person_id], self.request)
     base_url = absoluteURL(self.context.__parent__, self.request)
     return "%s/@@manage_contacts.html?%s" % (
         base_url,
         urllib.urlencode([('SEARCH_TITLE',
                            self.context.last_name.encode("utf-8"))]))
开发者ID:achouhans,项目名称:schooltool-2.8.5,代码行数:12,代码来源:basicperson.py


示例14: getSections

 def getSections(self):
     person = schooltool.person.interfaces.IPerson(self.request.principal)
     instructor_of = schooltool.course.interfaces.IInstructor(person).sections()
     for section in instructor_of:
         url = absoluteURL(section, self.request)
         url += '/gradebook'
         title = '%s %s' % (list(section.courses)[0].title, section.title)
         yield {'url': url, 'title': title}
     learner_of = schooltool.course.interfaces.ILearner(person).sections()
     for section in learner_of:
         url = absoluteURL(section, self.request)
         url += '/mygrades'
         title = '%s %s' % (list(section.courses)[0].title, section.title)
         yield {'url': url, 'title': title}
开发者ID:achouhans,项目名称:schooltool-2.8.5,代码行数:14,代码来源:dashboard.py


示例15: __str__

 def __str__(self):
     if IContainmentRoot.providedBy(self.context):
         return ''
     name = self.context.__name__
     url = absoluteURL(getParent(self.context), self.request)
     url += '/' + name
     return url
开发者ID:CGTIC,项目名称:Plone_SP,代码行数:7,代码来源:test_adding.py


示例16: lockroot

    def lockroot(self):
        if interfaces.IIndirectToken.providedBy(self.token):
            root = self.token.roottoken.context
        else:
            root = self.token.context

        return absoluteURL(root, self.request)
开发者ID:mkerrin,项目名称:z3c.davapp.zopelocking,代码行数:7,代码来源:properties.py


示例17: handleDelete

 def handleDelete(self, action):
     url = '%s/delete.html?delete.%s&CONFIRM' % (
         absoluteURL(self.context.__parent__, self.request),
         self.context.__name__.encode('utf-8'))
     self.request.response.redirect(url)
     # We never have errors, so just close the dialog.
     self.ajax_settings['dialog'] = 'close'
开发者ID:achouhans,项目名称:schooltool-2.8.5,代码行数:7,代码来源:term.py


示例18: password_reset_request

def password_reset_request(event):
    user = get_profile(event.principal_id, "basic")
    f = open_file('mail/password_reset_request.tmpl', __file__)

    site = hooks.getSite()
    site_url = absoluteURL(site, event.req)
    page_link = u'%s/password_reset' % site_url
    full_link = u'%s?login=%s&code=%s' % (page_link, event.login, event.code)
    dc = IZopeDublinCore(site)

    data = {'name': user.name,
            'code': event.code,
            'page_link': page_link,
            'full_link': full_link,
            'site_title': dc.title,
            'site_url': site_url}

    message = Template(file=f, searchList=[data])

    subject = u'Password reset request'
    send_mail(message,
              subject,
              user.email,
              subtype='html',
              from_header=dc.title,
              to_header=user.name)
开发者ID:ilshad,项目名称:tackle,代码行数:26,代码来源:pwdreset.py


示例19: handleSave

    def handleSave(self, action):
        data, errors = self.extractData()
        if errors:
            self.status = self.formErrorsMessage
            return

        typeName = self.tileType.__name__

        # Traverse to a new tile in the context, with no data
        tile = self.context.restrictedTraverse('@@%s/%s' % (typeName, self.tileId,))

        tile_conf_adapter = getMultiAdapter((self.context, self.request, tile),
                                            ITilesConfigurationScreen)

        tile_conf_adapter.set_configuration(data)

        #dataManager = ITileDataManager(tile)
        #dataManager.set(data)

        # Look up the URL - We need to redirect to the layout view, since
        # there's the only way from where a user would access the configuration
        contextURL = absoluteURL(tile.context, self.request)

        layoutURL = '%s/layoutedit' % contextURL

        notify(ObjectModifiedEvent(tile))

        # Get the tile URL, possibly with encoded data
        IStatusMessage(self.request).addStatusMessage(_(u"Tile configuration saved.",), type=u'info')

        self.request.response.redirect(layoutURL)
开发者ID:felucas,项目名称:collective.cover,代码行数:31,代码来源:configuration_view.py


示例20: _update

    def _update(self):
        """ Run updater
        """
        url = self.context.url
        etag = self.context.etag or None
        updated = self.context.updated
        if not isinstance(updated, datetime):
            updated = None
        else:
            updated = updated.timetuple()

        data = feedparser.parse(url, etag=etag, modified=updated)
        # No change
        if data.get('status', None) == 304:
            return "No changes made until last update"

        if data.get('etag', None):
            self.context.etag = etag

        last_updated = data.get('modified', None)
        if isinstance(last_updated, time.struct_time) and len(last_updated) >= 6:
            args = last_updated[:6] + (0, utc)
            self.context.updated = datetime(*args)
        else:
            self.context.updated = datetime.now(bucharest)

        for entry in data.get('entries', ()):
            self.add_newsitem(entry)

        return '%s\t%s\tUPDATED' % (
            datetime.now(bucharest).strftime('%d-%m-%Y %H:%M'),
            absoluteURL(self.context, self.request)
        )
开发者ID:avoinea,项目名称:stiamro,代码行数:33,代码来源:browser.py



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
Python runtime.get_active_config函数代码示例发布时间:2022-05-26
下一篇:
Python browser.absoluteURL函数代码示例发布时间: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