本文整理汇总了Python中wok.control.utils.model_fn函数的典型用法代码示例。如果您正苦于以下问题:Python model_fn函数的具体用法?Python model_fn怎么用?Python model_fn使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了model_fn函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: wrapper
def wrapper(*args, **kwargs):
method = 'POST'
validate_method((method), self.role_key, self.admin_methods)
try:
self.lookup()
if not self.is_authorized():
raise UnauthorizedError('WOKAPI0009E')
model_args = list(self.model_args)
request = parse_request()
validate_params(request, self, action_name)
if action_args is not None:
model_args.extend(
request[key] if key in request.keys() else None
for key in action_args
)
action_fn = getattr(self.model, model_fn(self, action_name))
action_result = action_fn(*model_args)
if destructive is False or \
('persistent' in self.info.keys() and
self.info['persistent'] is True):
return render_fn(self, action_result)
except MissingParameter, e:
raise cherrypy.HTTPError(400, e.message)
开发者ID:hanjiabao,项目名称:wok,代码行数:25,代码来源:base.py
示例2: update
def update(self, *args, **kargs):
params = parse_request()
try:
update = getattr(self.model, model_fn(self, 'update'))
except AttributeError:
e = InvalidOperation('WOKAPI0003E', {'resource':
get_class_name(self)})
raise cherrypy.HTTPError(405, e.message)
finally:
method = 'PUT'
RequestRecord(
self.getRequestMessage(method) % params,
app=get_plugin_from_request(),
req=method,
user=cherrypy.session.get(USER_NAME, 'N/A')
).log()
validate_params(params, self, 'update')
args = list(self.model_args) + [params]
ident = update(*args)
self._redirect(ident)
self.lookup()
return self.get()
开发者ID:hanjiabao,项目名称:wok,代码行数:25,代码来源:base.py
示例3: _get_resources
def _get_resources(self, flag_filter):
"""
Overriden this method, here get_list should return list dict
which will be set to the resource, this way we avoid calling lookup
again for each device.
:param flag_filter:
:return: list of resources.
"""
try:
get_list = getattr(self.model, model_fn(self, 'get_list'))
idents = get_list(*self.model_args, **flag_filter)
res_list = []
for ident in idents:
# internal text, get_list changes ident to unicode for sorted
args = self.resource_args + [ident]
res = self.resource(self.model, *args)
res.info = ident
# Excluding devices with mpath_member
if res.info['fstype'] == 'mpath_member':
continue
else:
res_list.append(res)
return res_list
except AttributeError:
return []
开发者ID:kimchi-project,项目名称:ginger,代码行数:25,代码来源:diskparts.py
示例4: wrapper
def wrapper(*args, **kwargs):
method = 'POST'
validate_method((method), self.role_key, self.admin_methods)
try:
self.lookup()
if not self.is_authorized():
raise UnauthorizedError('WOKAPI0009E')
model_args = list(self.model_args)
request = parse_request()
validate_params(request, self, action_name)
if action_args is not None:
model_args.extend(
request[key] if key in request.keys() else None
for key in action_args
)
action_fn = getattr(self.model, model_fn(self, action_name))
action_result = action_fn(*model_args)
# log request
reqParams = utf8_dict(self.log_args, request)
RequestRecord(
self.getRequestMessage(method, action_name) % reqParams,
app=get_plugin_from_request(),
req=method,
user=cherrypy.session.get(USER_NAME, 'N/A')
).log()
if destructive is False or \
('persistent' in self.info.keys() and
self.info['persistent'] is True):
return render_fn(self, action_result)
except MissingParameter, e:
raise cherrypy.HTTPError(400, e.message)
开发者ID:harche,项目名称:wok,代码行数:35,代码来源:base.py
示例5: _get_resources
def _get_resources(self, flag_filter):
try:
get_list = getattr(self.model, model_fn(self, 'get_list'))
idents = get_list(*self.model_args, **flag_filter)
res_list = []
for ident in idents:
# internal text, get_list changes ident to unicode for sorted
args = self.resource_args + [ident]
res = self.resource(self.model, *args)
try:
res.lookup()
except Exception as e:
# In case of errors when fetching a resource info, pass and
# log the error, so, other resources are returned
# Encoding error message as ident is also encoded value.
# This has to be done to avoid unicode error,
# as combination of encoded and unicode value results into
# unicode error.
wok_log.error("Problem in lookup of resource '%s'. "
"Detail: %s" % (ident,
encode_value(e.message)))
continue
res_list.append(res)
return res_list
except AttributeError:
return []
开发者ID:biancafc,项目名称:wok,代码行数:26,代码来源:base.py
示例6: get
def get(self, filter_params):
res_list = []
try:
get_list = getattr(self.model, model_fn(self, 'get_list'))
res_list = get_list(*self.model_args)
except AttributeError:
pass
return wok.template.render(get_class_name(self), res_list)
开发者ID:harche,项目名称:wok,代码行数:8,代码来源:base.py
示例7: lookup
def lookup(self):
try:
lookup = getattr(self.model, model_fn(self, 'lookup'))
self.info = lookup(*self.model_args)
except AttributeError:
self.info = {}
cherrypy.response.status = 202
return wok.template.render('Task', self.info)
开发者ID:harche,项目名称:wok,代码行数:9,代码来源:base.py
示例8: delete
def delete(self):
try:
fn = getattr(self.model, model_fn(self, 'delete'))
fn(*self.model_args)
cherrypy.response.status = 204
except AttributeError:
e = InvalidOperation('WOKAPI0002E', {'resource':
get_class_name(self)})
raise cherrypy.HTTPError(405, e.message)
开发者ID:open-power-host-os,项目名称:wok,代码行数:9,代码来源:base.py
示例9: delete
def delete(self):
try:
fn = getattr(self.model, model_fn(self, "delete"))
fn(*self.model_args)
cherrypy.response.status = 204
except AttributeError:
e = InvalidOperation("WOKAPI0002E", {"resource": get_class_name(self)})
raise cherrypy.HTTPError(405, e.message)
except OperationFailed, e:
raise cherrypy.HTTPError(500, e.message)
开发者ID:sdnnfv,项目名称:kimchi,代码行数:10,代码来源:base.py
示例10: delete
def delete(self):
try:
fn = getattr(self.model, model_fn(self, 'delete'))
task = fn(*self.model_args)
except AttributeError:
e = InvalidOperation('WOKAPI0002E', {'resource':
get_class_name(self)})
raise cherrypy.HTTPError(405, e.message)
except OperationFailed, e:
raise cherrypy.HTTPError(500, e.message)
开发者ID:biancafc,项目名称:wok,代码行数:10,代码来源:base.py
示例11: create
def create(self, params, *args):
try:
create = getattr(self.model, model_fn(self, "create"))
except AttributeError:
e = InvalidOperation("WOKAPI0005E", {"resource": get_class_name(self)})
raise cherrypy.HTTPError(405, e.message)
validate_params(params, self, "create")
args = self.model_args + [params]
task = create(*args)
cherrypy.response.status = 202
return wok.template.render("Task", task)
开发者ID:sdnnfv,项目名称:kimchi,代码行数:12,代码来源:base.py
示例12: _get_resources
def _get_resources(self, flag_filter):
try:
get_list = getattr(self.model, model_fn(self, 'get_list'))
idents = get_list(*self.model_args, **flag_filter)
res_list = []
for ident in idents:
args = self.resource_args + [ident]
res = self.resource(self.model, *args)
res.info = ident
res_list.append(res)
return res_list
except AttributeError:
return []
开发者ID:kimchi-project,项目名称:ginger,代码行数:13,代码来源:log.py
示例13: _get_resources
def _get_resources(self, flag_filter):
try:
get_list = getattr(self.model, model_fn(self, 'get_list'))
idents = get_list(*self.model_args, **flag_filter)
res_list = []
for ident in idents:
# internal text, get_list changes ident to unicode for sorted
args = self.resource_args + [ident]
res = self.resource(self.model, *args)
res.lookup()
res_list.append(res)
return res_list
except AttributeError:
return []
开发者ID:harche,项目名称:wok,代码行数:14,代码来源:base.py
示例14: update
def update(self, *args, **kargs):
try:
update = getattr(self.model, model_fn(self, "update"))
except AttributeError:
e = InvalidOperation("WOKAPI0003E", {"resource": get_class_name(self)})
raise cherrypy.HTTPError(405, e.message)
params = parse_request()
validate_params(params, self, "update")
args = list(self.model_args) + [params]
ident = update(*args)
self._redirect(ident)
return self.get()
开发者ID:sdnnfv,项目名称:kimchi,代码行数:15,代码来源:base.py
示例15: update
def update(self, *args, **kargs):
params = parse_request()
try:
update = getattr(self.model, model_fn(self, 'update'))
except AttributeError:
e = InvalidOperation('WOKAPI0003E', {'resource':
get_class_name(self)})
raise cherrypy.HTTPError(405, e.message)
validate_params(params, self, 'update')
args = list(self.model_args) + [params]
ident = update(*args)
self._redirect(ident)
cherrypy.response.status = 200
self.lookup()
return self.get()
开发者ID:open-power-host-os,项目名称:wok,代码行数:18,代码来源:base.py
示例16: create
def create(self, params, *args):
try:
create = getattr(self.model, model_fn(self, 'create'))
except AttributeError:
error = 'Create is not allowed for %s' % get_class_name(self)
raise cherrypy.HTTPError(405, error)
validate_params(params, self, 'create')
args = self.model_args + [params]
name = create(*args)
args = self.resource_args + [name]
res = self.resource(self.model, *args)
resp = res.get()
if 'task_id' in res.data:
cherrypy.response.status = 202
else:
cherrypy.response.status = 201
return resp
开发者ID:sdnnfv,项目名称:kimchi,代码行数:20,代码来源:storagepools.py
示例17: wrapper
def wrapper(*args, **kwargs):
# status must be always set in order to request be logged.
# use 500 as fallback for "exception not handled" cases.
if protected is not None and protected:
wokauth()
details = None
status = 500
method = 'POST'
validate_method((method), self.admin_methods)
try:
request = parse_request()
validate_params(request, self, action_name)
self.lookup()
if not self.is_authorized():
raise UnauthorizedError('WOKAPI0009E')
model_args = list(self.model_args)
if action_args is not None:
model_args.extend(
request[key] if key in request.keys() else None
for key in action_args
)
action_fn = getattr(self.model, model_fn(self, action_name))
action_result = action_fn(*model_args)
status = 200
if destructive is False or \
('persistent' in self.info.keys() and
self.info['persistent'] is True):
result = render_fn(self, action_result)
status = cherrypy.response.status
return result
except WokException, e:
details = e
status = e.getHttpStatusCode()
raise cherrypy.HTTPError(status, e.message)
开发者ID:open-power-host-os,项目名称:wok,代码行数:41,代码来源:base.py
示例18: _get_resources
def _get_resources(self, flag_filter):
"""
Overriden this method, here get_list should return list dict
which will be set to the resource, this way we avoid calling lookup
and hence avoiding lsdasd -l command execution again for each device.
:param flag_filter:
:return: list of resources.
"""
try:
get_list = getattr(self.model, model_fn(self, 'get_list'))
idents = get_list(*self.model_args, **flag_filter)
res_list = []
for ident in idents:
# internal text, get_list changes ident to unicode for sorted
args = self.resource_args + [ident]
res = self.resource(self.model, *args)
res.info = ident
res_list.append(res)
return res_list
except AttributeError:
return []
开发者ID:harche,项目名称:ginger,代码行数:21,代码来源:dasddevs.py
示例19: _get_resources
def _get_resources(self, flag_filter):
"""
Overriding this method to avoid lookup call for each user,
here get_list should return list of dict
which will be set to the resource, this way we avoid calling lookup
and hence avoiding augeas parsing for each user.
:param flag_filter:
:return: list of resources.
"""
try:
get_list = getattr(self.model, model_fn(self, 'get_list'))
idents = get_list(*self.model_args, **flag_filter)
res_list = []
for ident in idents:
args = self.resource_args + [ident]
res = self.resource(self.model, *args)
res.info = ident
res_list.append(res)
return res_list
except AttributeError:
return []
开发者ID:LiftedKilt,项目名称:ginger,代码行数:21,代码来源:users.py
示例20: create
def create(self, params, *args):
try:
create = getattr(self.model, model_fn(self, 'create'))
except AttributeError:
e = InvalidOperation('WOKAPI0005E', {'resource':
get_class_name(self)})
raise cherrypy.HTTPError(405, e.message)
validate_params(params, self, 'create')
args = self.model_args + [params]
task = create(*args)
cherrypy.response.status = 202
# log request
method = 'POST'
code = self.getRequestMessage(method)
reqParams = utf8_dict(self.log_args, params)
log_id = log_request(code, reqParams, None, method,
cherrypy.response.status)
save_request_log_id(log_id, task['id'])
return wok.template.render("Task", task)
开发者ID:open-power-host-os,项目名称:wok,代码行数:22,代码来源:base.py
注:本文中的wok.control.utils.model_fn函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论