python boolean_Python fields.Boolean方法代码示例

# 需要导入模块: from marshmallow import fields [as 别名]

# 或者: from marshmallow.fields import Boolean [as 别名]

def routes(app, models, schemas, filter_fields):

class WidgetViewBase(GenericModelView):

model = models["widget"]

schema = schemas["widget"]

class WidgetListView(WidgetViewBase):

filtering = Filtering(

color=operator.eq,

color_allow_empty=ColumnFilter(

"color", operator.eq, allow_empty=True

),

size=ColumnFilter(operator.eq, separator="|"),

size_min=ColumnFilter("size", operator.ge),

size_divides=ColumnFilter(

"size", lambda size, value: size % value == 0

),

size_is_odd=ModelFilter(

fields.Boolean(),

lambda model, value: model.size % 2 == int(value),

),

size_min_unvalidated=ColumnFilter(

"size", operator.ge, validate=False

),

size_skip_invalid=ColumnFilter(

"size", operator.eq, skip_invalid=True

),

)

def get(self):

return self.list()

class WidgetSizeRequiredListView(WidgetViewBase):

filtering = Filtering(size=ColumnFilter(operator.eq, required=True))

def get(self):

return self.list()

class WidgetColorCustomListView(WidgetViewBase):

filtering = Filtering(color=filter_fields["color_custom"])

def get(self):

return self.list()

class WidgetDefaultFiltersView(WidgetViewBase):

filtering = Filtering(

color=ModelFilter(

fields.String(missing="red"),

lambda model, value: model.color == value,

),

size=ColumnFilter(operator.eq, missing=1),

)

def get(self):

return self.list()

api = Api(app)

api.add_resource("/widgets", WidgetListView)

api.add_resource("/widgets_size_required", WidgetSizeRequiredListView)

api.add_resource("/widgets_color_custom", WidgetColorCustomListView)

api.add_resource("/widgets_default_filters", WidgetDefaultFiltersView)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
class ApprovalFlow(models.Model): _name = 'approval.flow' _description = u'审批流程' def _compute_domain(self): all_cls = inspect.getmembers(sys.modules[__name__], inspect.isclass) odoo_cls = [getattr(cls[1], '_name') for cls in all_cls if cls[1].__bases__[0].__name__ == 'Model'] # 排除当前的对象 odoo_cls += [model.model for model in self.env['ir.model'].search([('transient', '=', True)])] # 排除临时对象 return [('model', 'not in', odoo_cls)] name = fields.Char(u'名称') model_id = fields.Many2one('ir.model', u'模型', domain=_compute_domain, index=1) model_name = fields.Char(related="model_id.model", string='模型名称') condition = fields.Char(u'条件', help=u'请遵循odoo的domain的写法,如:[("field_name", "=", value)]',store=True) on_create = fields.Boolean(u'创建时', default=False, help=u'记录创建时创建审批流程') company_ids = fields.Many2many('res.company', 'approval_flow_company_rel', 'flow_id', 'company_id', u'适用公司', default=lambda self: [self.env.company.id]) node_ids = fields.One2many('approval.flow.node', 'flow_id', u'流程节点', copy=False) action_ids = fields.One2many('approval.flow.node.action', 'flow_id', u'节点动作', copy=False) commit_approval_group_id = fields.Many2one('res.groups', u'提交审批组', help=u'执行提交审批的组,如果未指定,则记录所属公司的所有用户都可以提交审批') approval_can_run_id = fields.Many2one('execute.function.list', u'完成后能执行方法', help=u'审批流程完成后才能执行的功能,比如确认订单等') approval_can_run = fields.Char(u'完成后能执行方法', help=u'审批流程完成后才能执行的功能,比如确认订单等',related='approval_can_run_id.fun_name',store=True) approval_cannot_run_id = fields.Many2many('execute.function.not.list', 'function_not_rel', u'完成后不能执行操作', help=u'审批流程完成后不能能执行的操作,修改,删除') approval_cannot_run = fields.Char(u'完成后不能执行操作', help=u'审批流程完成后不能能执行的操作,修改,删除',store=True) def unlink(self): audit = self.env['approval.flow'] for record in audit: if record.approval_can_run_id == '删除': raise UserError("不能删除") return super(Rokedispatchordermanagement, self).unlink() 重新删除方法不能删除approval_can_run_id值等于删除的怎么写
06-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值