本文整理汇总了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)
示例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)
示例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)
示例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))
示例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
示例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)
示例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."))
示例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