未指定标题的文章
Posted 玄机
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了未指定标题的文章相关的知识,希望对你有一定的参考价值。
介绍
- 新版本的odoo开始减少workflow的使用,推荐使用workflow-ish的方式来处理工作流过程
- 很多模块中还是使用到工作流,这里我记录一个简单的实例,欢迎大家给出建议。
- 在本实例中工作流可以分为两个部分,一部分是“view视图”,一部分是“model方法”和相关的“流程字段”
定义流程流转字段
state = fields.Selection([
(\'draft\', \'草稿\'),
(\'read\', \'已阅\'),
(\'write\', \'已写心得\'),
(\'submit\', \'已上传心得\')],
string=\'Status\', default=\'draft\', readonly=True, copy=False, track_visibility=\'onchange\')
Selection 是一个多值选择的字段类型,里面可以定义一个数组集。
odoo工作流
- String 是一个字段前台显示的值。
- default 是一个默认的初始的状态新创建数据后会默认加载这个状态初始值。
- track_visibility 流程变更可见性。
- readonly 是定义改状态值是否只读。
定义工作流程的 def
@api.one
def button_done(self):
self.state = \'read\'
self.message_post(\'变更——————草稿 ——> 已阅\', subtype=\'mail.mt_note\')
@api.one
def button_confirm(self):
self.state = \'submit\'
self.message_post(\'变更——————已写心得 ——> 已上传心得\', subtype=\'mail.mt_note\')
for rel in self.employee_ids:
domain = [(\'id\', \'=\', rel.id)]
employee = self.env[\'files.employee\'].search(domain)
data = {
\'name\': employee.name,
\'email\': employee.work_email,
\'event_id\': self.id,
\'wx_number\': employee.wx_number,
}
self.env[\'activity.registration\'].create(data)
定义页面的 View
<record model="ir.ui.view" id="view_activity_form">
<field name="name">activity.event.form</field>
<field name="model">activity.event</field>
<field name="arch" type="xml">
<form string="党员活动">
<header>
<button string="活动已阅" name="button_done" states="draft" type="object" class="oe_highlight" groups="base.group_user"/>
<button string="已上传活动心得" name="button_confirm" states="read" type="object" class="oe_highlight" groups="base.group_user"/>
<field name="state" widget="statusbar" statusbar_visible="draft,confirm,done"/>
</header>
<sheet>
- states="draft" 是button显示与否的判断条件,如果值是这个值,则改button显示可见,即可用。
- class="oe_highlight" 是引入的 button 的样式,可自定义样式并引入。
- name="button_done" 是调用模型中的方法字段,如该方法调用后台 def button_done(self) 方法。
- string="活动已阅" String是该状态按钮显示的值,最好定义为英文,然后进行国际化i18n翻译。
- <field name="state"... 是工作流程流转的状态值显示,到哪个阶段显示到哪个阶段的值。
- widget="statusbar" 样式效果展示。
以上是关于未指定标题的文章的主要内容,如果未能解决你的问题,请参考以下文章
片段(Java) | 机试题+算法思路+考点+代码解析 2023
Ajax 片段元标记 - Googlebot 未读取页面内容
getSupportFragmentManager() 在活动扩展片段中未定义