关于odoo:Odoo-14-如何修改登录后首页

探讨是用户登录后看到的第一个页面。在大多数状况下,没有人心愿将探讨视为登录页面。但有许多应用程序依赖于探讨,因而您无奈卸载它。 Odoo 登录后默认关上主菜单中的第一项页面。所以更改登录页面的解决方案是将其设为第一项,这是由菜单项的 Sequence 字段决定。 更改菜单项地位激活开发者模式 – 在设置页面中能够找到.拜访设置 > 技术 > 用户界面 > 菜单项单击您想要将其设为登录页面的页面批改序列 - 数字越小,它在菜单上呈现的地位就越靠前。将页面的 Sequence 批改为 1 如果心愿它显示为所有用户的登录页面。

October 4, 2021 · 1 min · jiezi

关于odoo:Odoo-14-中的-OWL-扩展和修补现有的-OWL-组件

OWL 组件介绍OWL 组件与通常的 Odoo JS 类大不相同,它们具备您相熟的自定义继承零碎。 首先它们是ES6 类,如果您不相熟 ES6 类,能够先学习ES6的内容 ES6 类基本上是 JavaScript 中现有的基于原型的继承的语法糖。在最根本的层面上,ES6 Class 是一个合乎基于原型继承的构造函数。ES6 类依然有 Object.prototype! 基于类和基于原型的继承之间最重要的区别在于,类定义了能够在运行时实例化的类型,而原型自身就是一个对象实例。要应用 Odoo 14 现有的 OWL 组件,先理解一些根本的概念。 class Component { constructor(name) { this.name = name; } render() { console.log(`${this.name} renders itself.`); } // Getter/setter methods are supported in classes, // similar to their ES5 equivalents get uniqueId() { return `${this.name}-test`; }}能够应用关键字继承类 extends 并用 super 调用父函数。 class MyBetterComponent extends Component { constructor(name) { super(name); // call the super class constructor and pass in the name parameter } render() { console.log(`${this.name} with id ${this.uniqueId} render itslef better.`); }}let comp = new MyBetterComponent('MyBetterComponent');comp.render(); // MyBetterComponent with id这是规范的 ES6 super 关键字,不要将它与_super 框架内构建的 Odoo函数混同。 ...

September 8, 2021 · 1 min · jiezi

关于odoo:未指定标题的文章

介绍新版本的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.onedef button_done(self): self.state = 'read' self.message_post('变更——————草稿 ——> 已阅', subtype='mail.mt_note')@api.onedef 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" 款式成果展现。

August 26, 2021 · 1 min · jiezi

关于odoo:Odoo-14-Centos-7-安装教程

更新零碎 sudo yum update -ysudo yum install epel-release装置Python3 sudo yum install -y python3 python3-devel设置Python3 alternatives --install /usr/bin/python python /usr/bin/python2 50alternatives --install /usr/bin/python python /usr/bin/python3.6 60alternatives --config python修复Yum因为Yum要应用Python2的,所以要修复一下 cat /usr/bin/yum#!/usr/bin/python2.7cat /usr/libexec/urlgrabber-ext-down#!/usr/bin/python2.7增加odoo用户 sudo useradd -m -U -r -d /opt/odoo -s /bin/bash odoo增加零碎依赖包 sudo yum install git gcc wget nodejs libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel装置设置PostgresqlOdoo14须要Postgresql 10以上 # 装置 RPM 仓库:sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 装置 PostgreSQL:sudo yum install -y postgresql12-server# 初始化数据库并设置自启动:sudo /usr/pgsql-12/bin/postgresql-12-setup initdbsudo systemctl enable postgresql-12sudo systemctl start postgresql-12创立数据库用户 ...

May 9, 2021 · 1 min · jiezi

关于odoo:Odoo-14开发者指南第二章-管理Odoo服务端实例

全书残缺目录请见:Odoo 14开发者指南(Cookbook)第四版 在第一章 装置Odoo开发环境中,咱们学习了如何应用源码中所带的规范外围插件配置Odoo实例。本章次要解说如何对Odoo实例增加非核心或自定义插件。在Odoo中,能够通过多个目录加载插件。此外,举荐应用独自的目录加载第三方插件或自定义的插件,以防止与Odoo外围模块产生抵触。甚至Odoo企业版也是一种类型的插件目录,须要像加载一般插件目录那样对其进行加载。 本章中,咱们将解说如下内容: 配置插件门路标准化你的实例目录布局装置及降级本地插件模块通过GitHub装置插件模块对插件利用批改利用及尝试倡议的拉取申请无关用语 本书中,咱们会穿插应用插件(add-on)、模块(module)、利用(app)或插件模块(add-on module)。它们都是指可通过用户界面在Odoo中装置的Odoo利用或扩大利用。 配置插件门路通过addons_path参数的配置,能够在 Odoo 中加载本人的插件模块。在Odoo初始化一个新数据库时,它会在addons_path配置参数中给定的这些目录中搜寻插件模块。addons_path会在这些目录中搜寻潜在的插件模块。 addons_path中所列出的目录预期应蕴含子目录,每个子目录是一个插件模块。在数据库初始化实现后,将可能装置这些目录中所给出的模块。 筹备工作这一部分假设你曾经筹备好了实例并生成了配置文件,如在第一章 装置Odoo开发环境在一个文件中存储实例配置一节所形容。Odoo的源码寄存在~/odoo-dev/odoo中,而配置文件寄存在~/odoo-dev/myodoo.cfg中。 如何配置...按如下步骤在实例的addons_path中增加~/odoo-dev/local-addons目录: 编辑你的实例配置文件,即 ~/odoo-dev/myodoo.cfg。定位到以addons_path =结尾的一行,默认应该会看到如下内容: addons_path = ~/odoo-dev/odoo/addons译者注:以后默认生成的配置文件中为绝对路径 批改该行,增加一个逗号(英文半角),并接你想想要增加为addons_path的目录名称,如以下代码所示: addons_path = ~/odoo-dev/odoo/addons,~/odoo-dev/local-addons在终端中重启实例 $ ~/odoo-dev/odoo/odoo-bin -c my-instance.cfg运行原理...在重启 Odoo 时,会读取配置文件。addons_path变量的值应为一个逗号分隔的目录列表。可承受相对路径,但它们是绝对于当前工作目录的,因而应在配置文件中尽量避免。 至此,咱们仅在Odoo中列出了插件目录,但~/odoo-dev/local-addons中尚不存在插件模块。即便在该目录中新增了插件模块,Odoo也不会在用户界面中显示这一模块。为此,你须要执行一个额定的操作,在下一部分更新插件模块列表中会进行解说。 这背地的起因是在初始化新数据库时,Odoo在可用模块中主动列举了自定义模块,但如若在数据库初始化之后新增模块,就须要像更新插件模块列表一节中那样手动更新可用模块列表。扩大常识...在首次调用 odoo-bin脚本来初始化新数据库时,能够传递一个带逗号分隔目录列表的--addons-path命令行参数。这会以所提供插件门路中所找到的所有插件来初始化可用插件模块列表。这么做时,要显式地蕴含根底插件目录(odoo/odoo/addons)以及外围插件目录(odoo/addons)。与后面稍有不同的是本地插件目录不能为空(译者注:请先浏览上面的小贴士),它必须要至多蕴含一个子目录,并蕴含插件模块的最小化构造。 在第三章 创立Odoo插件模块中,咱们会来看如何编写你本人的模块。同时,这里有一个生成内容来满足Odoo要求的快捷版黑科技: $ mkdir -p ~/odoo-dev/local-addons/dummy$ touch ~/odoo-dev/local-addons/dummy/__init__.py$ echo '{"name": "dummy", "installable": False}' > \~/odoo-dev/local-addons/dummy/__manifest__.py你能够应用--save选项来保留门路至配置文件中: $ odoo/odoo-bin -d mydatabase \--addons-path="odoo/odoo/addons,odoo/addons,~/odoo-dev/local-addons" \--save -c ~/odoo-dev/my-instance.cfg --stop-after-init本例中,应用相对路径不会有问题,因为它们会在配置文件中转化为绝对路径。 注:因为Odoo仅当从命令行中设置门路时在插件门路的目录中查看插件,而不是在从配置文件中加载门路的时候,dummy已不再必要。因而,你能够删除它(或保留到你确定不须要新建一个配置文件时)。标准化你的实例目录布局咱们举荐你在开发和生产环境都应用类似的目录布局。这一标准化会在你要执行运维时体现出用途,它也会缓解你日常工作的压力。 这一部分创立将类似生命周期或类似用处的文件分组放在标准化子目录中的目录构造。 仅在心愿以类似的文件构造治理开发和生产环境时才须要学习本节。如果不须要,能够跳过本节。此外,无微妙严格依照本节中雷同的目录构造。请自在依照本人的需要来调整这一构造。 如何标准化...创立所举荐实例布局,须要执行如下步骤: 为每个实例创立一个目录: $ mkdir ~/odoo-dev/projectname$ cd ~/odoo-dev/projectname在名为env/的子目录中创立一个Python虚拟环境对象: $ python3 -m venv env创立一些子目录,如下: ...

April 28, 2021 · 2 min · jiezi