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


Python INameChooser.checkName方法代码示例

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


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

示例1: validate

# 需要导入模块: from zope.app.container.interfaces import INameChooser [as 别名]
# 或者: from zope.app.container.interfaces.INameChooser import checkName [as 别名]
    def validate(self, data):
        form = self.view
        if 'shortname' not in form.widgets:
            return super(ContentNameValidator, self).validate(data)

        widget = form.widgets['shortname']

        if widget.error:
            return super(ContentNameValidator, self).validate(data)

        context = self.view.context
        shortname = data.get('shortname').lower()
        valid_chars = "-.%s%s" % (string.lowercase, string.digits)
        shortname = ''.join(c for c in shortname if c in valid_chars)

        if shortname == context.__name__:
            return super(ContentNameValidator, self).validate(data)

        errors = []
        chooser = INameChooser(context.__parent__)

        try:
            chooser.checkName(shortname, None)
        except (UserError, ValueError), err:
            exc = NameError(unicode(err))

            widget.error = NameErrorViewSnippet(
                exc, self.request, widget, widget.field, form, self.context)
            widget.error.update()
            errors.append(exc)
开发者ID:Zojax,项目名称:zojax.content.forms,代码行数:32,代码来源:wizardedit.py

示例2: validateActionFields

# 需要导入模块: from zope.app.container.interfaces import INameChooser [as 别名]
# 或者: from zope.app.container.interfaces.INameChooser import checkName [as 别名]
 def validateActionFields(self, cat_name, data, allow_dup=False):
     """ Check action fields on validity """
     errors = {}
     
     if allow_dup:
         category = ActionCategory(cat_name)           # create dummy category to avoid id duplication during action update
     else:
         category = self.getOrCreateCategory(cat_name) # get or create (if necessary) actions category
     
     # validate action id
     chooser = INameChooser(category)
     try:
         chooser.checkName(data['id'], self.context)
     except Exception, e:
         errors['id'] = "%s" % str(e)
开发者ID:kroman0,项目名称:products,代码行数:17,代码来源:plonetabs.py

示例3: addObject

# 需要导入模块: from zope.app.container.interfaces import INameChooser [as 别名]
# 或者: from zope.app.container.interfaces.INameChooser import checkName [as 别名]
 def addObject(self,id_obs_value, what_is_that=None):
     try:
         flatten = getUtility(IQreatureUtility, name="Flatten")
         id_obs_value_list = [i for i in flatten(id_obs_value)]
         if len(id_obs_value_list) == 3:
             value = id_obs_value_list[2]
         elif len(id_obs_value_list) == 6:
             value = [id_obs_value_list[2],id_obs_value_list[5]]
         else:
             return -1
         answer_id = int(id_obs_value_list[0])
         ob = id_obs_value_list[1]
         quiz = removeSecurityProxy(self.context)
         sm = quiz.getSiteManager()
         answer = removeSecurityProxy(sm['intids'].getObject(int(answer_id)))
         notify(CachedObjectChangedEvent([answer]))
         TYPE_OBJECT_MAP = {'lead':AnswerLeads,'depend':AnswerDepends, 'value':AnswerValue}
         if type(value) == type([]):
             ob = TYPE_OBJECT_MAP[ob](int(value[0]),int(value[1]))
         elif ob == 'value' or ob ==u'value':
             ob = TYPE_OBJECT_MAP[ob](unicode(value))
         else:
             ob = TYPE_OBJECT_MAP[ob](int(value))
         notify(ObjectCreatedEvent(ob))
         chooser = INameChooser(answer)
         name = chooser.chooseName(None, ob)
         
         if chooser.checkName(name, ob):
             answer[name] = ob
         else:
             return (0-1)
         return IAsyncDataManager(answer[name]).addSelf()
     except:
         return (0-1)
开发者ID:HengeSense,项目名称:Qreature,代码行数:36,代码来源:async.py

示例4: validate

# 需要导入模块: from zope.app.container.interfaces import INameChooser [as 别名]
# 或者: from zope.app.container.interfaces.INameChooser import checkName [as 别名]
    def validate(self, value):
        super(AddName, self).validate(value)

        if self.context is None:
            return

        return True
        container = getUtility(IIntIds).queryObject(self.context.get('location'))
        if container is not None:
            # check content name
            chooser = INameChooser(container)

            try:
                chooser.checkName(value, None)
            except UserError, err:
                raise NameError(unicode(err))
开发者ID:Zojax,项目名称:zojax.content.draft,代码行数:18,代码来源:field.py

示例5: validate

# 需要导入模块: from zope.app.container.interfaces import INameChooser [as 别名]
# 或者: from zope.app.container.interfaces.INameChooser import checkName [as 别名]
    def validate(self, data):
        if not self.view.nameAllowed():
            return super(AddFormNameValidator, self).validate(data)

        errors = []
        container = self.view.context.context

        # check content name
        chooser = INameChooser(container)

        name = self.view.getName(None)
        if name or IEmptyNamesNotAllowed.providedBy(container):
            try:
                chooser.checkName(name, None)
            except (UserError, ValueError), err:
                error = ContentNameError(unicode(err))
                errors.append(error)
                self.view.nameError = err
开发者ID:Zojax,项目名称:zojax.content.forms,代码行数:20,代码来源:formvalidator.py

示例6: validate

# 需要导入模块: from zope.app.container.interfaces import INameChooser [as 别名]
# 或者: from zope.app.container.interfaces.INameChooser import checkName [as 别名]
    def validate(self, data):
        form = self.view
        context = form.context
        shortname = data['shortname']
        widget = form.widgets['shortname']

        if widget.error or shortname == context.shortname:
            return super(ContentNameValidator, self).validate(data)

        errors = []

        chooser = INameChooser(context.manager)
        try:
            chooser.checkName(shortname, None)
        except UserError, err:
            exc = NameError(unicode(err))

            widget.error = getMultiAdapter(
                (exc, self.request, widget, widget.field, form, self.context),
                interfaces.IErrorViewSnippet)
            widget.error.update()
            errors.append(exc)
开发者ID:Zojax,项目名称:zojax.personal.space,代码行数:24,代码来源:preference.py

示例7: add

# 需要导入模块: from zope.app.container.interfaces import INameChooser [as 别名]
# 或者: from zope.app.container.interfaces.INameChooser import checkName [as 别名]
    def add(self, content, name=''):
        if not self.isAddable():
            raise Unauthorized("Can't create '%s' instance"%self.name)

        context = self.container
        content = removeAllProxies(content)

        if IContentContainer.providedBy(context) or \
                IContentNamesContainer.providedBy(content):
            chooser = INameChooser(context)

            if IContainerNamesContainer.providedBy(context):
                name = chooser.chooseName('', content)
            else:
                name = chooser.chooseName(name, content)
                chooser.checkName(name, content)

            self.checkObject(context, name, content)

            removeSecurityProxy(context)[name] = content
            return context[name]
        else:
            raise ValueError(_("Can't add content."))
开发者ID:Zojax,项目名称:zojax.content.type,代码行数:25,代码来源:contenttype.py

示例8: add

# 需要导入模块: from zope.app.container.interfaces import INameChooser [as 别名]
# 或者: from zope.app.container.interfaces.INameChooser import checkName [as 别名]
 def add(self,object):
     chooser = INameChooser(self.context)
     self.obj_name = chooser.chooseName(None, object)
     if chooser.checkName(self.obj_name, object):
         self.context[self.obj_name] = object
开发者ID:HengeSense,项目名称:Qreature,代码行数:7,代码来源:answer.py


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