odoo学习总结】的更多相关文章

HTTP Odoo 中http类中的Root是wsgi应用的入口主程序. 入口,wsgi_server调用如下: def application(environ, start_response): if config['proxy_mode'] and '_X_FORWARDED_HOST' in environ: return werkzeug.contrib.fixers.ProxyFix(application_unproxied)(environ, start_response) els…
odoo视图对应模型:model="ir.ui.view"> <record id="mrp_workcenter_view_light_inherit" model="ir.ui.view"> <field name="name">mrp.workcenter.form.inherit</field> <field name="model">mrp.w…
                                               odoo10总结 1.odoo中的向导应用. .py文件 # -*- coding: utf-8 -*-from odoo import models, fields, apifrom odoo.exceptions import UserErrorfrom odoo.tools.translate import _ class ImportWizard(models.TransientModel):…
Odoo官文文档: https://www.odoo.com/zh_cn/page/docs http://www.odoo.com/documentation/8.0/ Odoo中文文档推荐: http://zhflash.com/ http://cn.openerp.cn/category/blog/%E6%96%87%E6%A1%A3%E7%BF%BB%E8%AF%91/ Odoo中文社区: http://shine-it.net/ 博客推荐: http://www.cnblogs.com…
作者原文:https://blog.csdn.net/wangnan537/article/details/43992771 在实际应用Odoo(OpenERP)的过程中, 会有对某用户组隐藏菜单的需求. 下文的代码定义了一个特定的用户组hideme, 并将要隐藏的菜单指定给该用户组, 这样相当于对所有的普通用户组屏蔽了此菜单.注: 也可将groups属性值指定为多个用户组, 以逗号间隔开, 则除指定的用户组外, 菜单对其他用户组不可见. <?xml version="1.0"…
odoo新API中,字段类型不变,继承改变 1.旧的API定义模型: from openerp.osv import osv,fields class oldmodel(osv.osv): #模型名称 _name="old.model" #定义字段 _columns={ "name":field.char(string='Name') } 2.新的API定义模型: from openerp import models,fields class newmodel(mo…
1.切换到odoo用户 su - odoo -s /bin/bash 2. 创建新数据库 createdb v8dev 3. 初始化数据库,并配置odoo数据模式 chmod +x odoo: odoo.py(可选,增加文件的执行权限) ./odoo.py -d v8dev 4. 在Modules loaded之后,可以通过选择数据库和修改用户名,从网页登录odoo localhost:/web/database/manager localhost:/web/database/selector…
1. odoo通过ORM(对象关系映射)实现底层数据与上层逻辑到关联,保证数据存储的安全性和使用上到便利性. 2. odoo由模块组成,每个模块包含:Bussiness Object, Data, Wizard, Report四个部分.…
转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/11189194.html 一:Odoo架构 1:数据库服务器层:postgreSQL数据库服务器,用于存储所有应用数据. 2:openERP应用服务层:包含所有企业模块逻辑(报表引擎.工作流引擎等),向下提供ORM引擎,向上提供web服务,控制服务器与浏览器的通信. 3:客户层:包括GUI客户端以及Web客户端. 客户端通过JSON-RPC或者XML-RPC与服务器进行通信. 二:Odoo常用功能模块 企业…
Environment 参考链接: http://odoo-new-api-guide-line.readthedocs.io/en/latest/environment.html#environment 在新的API中,引入了环境的概念,它的主要目标是提供对游标.用户ID.模型.上下文.记录集.和缓存的封装. 有了这些,你没有必要在再需传入这些函数参数: # before def afun(self, cr, uid, ids, context=None): pass # now def af…
按条件隐藏: <xpath expr="//group[1]" position="attributes"> <attribute name="attrs">{'invisible':[('uid_qx','=',False),('customer','=',True),('id','!=',False)]}</attribute></xpath><xpath expr="//div…
1.2.3.41.2.5.62.410.6变成1.234,1.256,2.4,10.6 def get_bom_namenum(self, cr, uid, ids, field_name, arg, context=None): rvalue={} for obj in self.browse(cr,uid,ids,context=None): firstnum='' centernum='' endnum=0.0 for i in range(len(obj.name.split('.'))…
# 输入客户带出它默认的发运方式和包装方式 def on_change_partner_id_return(self,cr,uid,ids,partner_id,context=None): result={} if partner_id:# 如果存在 #找到满足条件的值 obj=self.pool.get('res.partner').browse(cr,uid,partner_id,context=context) #取出数据显示在前端 fyfs=obj.send_type zxbzfs=o…
只要在window.action中他添加相应东domain即可,如: <!-- 树型列表 --> <record model="ir.actions.act_window" id="gc_area_set_list_action"> <field name="name"> AreaManage </field> <field name="res_model">guar…
Odoo8.0新API文档 一.新API概述 在8中,api接口分为traditaional style和record style,traditional style指的就是我们在7中使用的类型,def (cr,uid,ids,context)式的语法.而record style精简了参数,只保留了self和args,形如def (self,args) __all__ = [ 'Environment', 'Meta', 'guess', 'noguess', 'model', 'multi',…
constrains装饰用于对字段进行限制 应用举例: 定义列: age = fields.Integer(string="age") 方法: @api.constrains('age') def _check_age(self): if self.age<16: raise ValueError(_('Age must be older than 16'))…
Environment类提供了对ORM对象的封装,同时提供了对注册类的访问,记录集的缓存,以及管理重计算的数据结构. 对于继承了Model的类来说可以直接通过self.env对Environment进行操作. 属性列表: 1.user:返回当前用户 self.env.user 2.lang:返回当前语言代码 self.env.lang 3.in_draft:返回是否处于草稿模式 self.env.in_draft 4.in_onchange:返回是否处于'onchange'草稿模式 self.e…
@api.multi def create_order_sale(self): """""" stage_list = [] for order in self.project_id.type_ids: stage_list.append((order.id, order.now_step)) stage_dict = dict(stage_list) same_id = [] now_stage_step = self.stage_id.now…
小九今天分享了Odoo一键部署.高效安装的图文详解,接下来,针对Odoo使用过程中的一些问题,小九整理了详细的常见问题问答.这样的直观方式往往能快速高效地解决一些疑惑. 也欢迎提出其他问题,共同探讨,共同进步. 安装问题 1.浏览器打开IP地址,无法访问 Odoo(白屏没有结果)? 您的服务器对应的安全组80端口没有开启(入规则),导致浏览器无法访问到服务器的任何内容. 2.勾选 Demo data了,以后还能删除这些数据吗? 官方并没有提供 Demo data 的删除工具,建议直接删除数据库,…
学习了<Odoo快速入门与实践 Python开发ERP指南>(刘金亮 2019年5月第1版 机械工业出版社)第6章自建应用入门后进行一下总结. 因为本书作者使用Odoo11,而目前最新版本为Odoo14,因此存在一些版本上的差异. 一.首先是界面差异 Odoo11的菜单在左侧导航区显示,在Odoo14中顶级菜单(parent为空)在导航区显示,而二级及以下菜单在右侧上部显示. 图1 Odoo11界面 图2 Odoo14界面 在Odoo14中,在打开进入具体应用后,左侧导航栏即"消失&…
Odoo是使用Python写的开源ERP软件,这几年比较火.内部有实施能力的,这个软件还是很不错的.总体来说,国外的这类软件,更多是在做平台(比如微软的AX.SharePoint.SAP等)平台本身具备了丰富的erp标准功能,还不满足的时候,可以自己定义或开发插件.这些软件希望达到的目标:以平台型ERP为主干,其它软件接入集成,实现企业信息化.这本身也是企业信息比较常规的一条路线. 平台类的ERP有几在大特点:开放.接口众多.向上可以实现BI.向两边有主数据管理.中间集成开发平台.自身处理多组织…
2019-09-13 今天是中秋节,星期五 #自定义显示名称 def name_get(self): result = [] for order in self: rec_name = "%s(%s)"%(record.name,record.date_done) result.append((record.id, rec_name)) return result # 新添加函数name_search @api.model def name_search(self, name='',…
目录: 一.odoo介绍(发源 版本 ERP对比 优势劣势 应用场景 发展情况 社区介绍) 二.odoo设计思想 三.odoo自带模块 四.odoo开发前准备(python基础) 五.odoo环境搭建(本地搭建 docker搭建) 六.odoo入门学习 (模块结构 模型 视图 权限 5种Action) 七.odoo开发笔记(个性功能) 八.odoo权限管理 九.odoo日常运维 (注意事项 异常处理 性能优化) 十.odoo项目实施 (邮件配置,打印模版配置) 十一.odoo saas搭建 待更…
模块信息存储在ir.module.module 数据表中 平时在开发过程中经常会刷新本地模块列表,例如:新增了模块.更新了模块基础信息.更换了模块图标等等,在点击‘更新’按钮的时候odoo平台到底干了哪些事? 后台代码: # update the list of available packages@assert_log_admin_access@api.modeldef update_list(self): res = [0, 0] # [update, add] default_versio…
官方ORM API开发文档:https://www.odoo.com/documentation/10.0/reference/orm.html Recordsets(记录集) New in version 8.0: This page documents the New API added in Odoo 8.0 which should be the primary development API going forward. It also provides information abo…
构建接口扩展(Building Interface Extensions) 本指南是关于为Odoo的web客户创建模块. 要创建有Odoo的网站,请参见建立网站;要添加业务功能或扩展Odoo的现有业务系统,请参见构建模块. 警告: 该指南需要以下知识: Javascript .jQuery.Underscore.js 同时也需要安装 Odoo 和 Git. 一个简单的模型 让我们从一个简单的Odoo模块开始,它包含基本的web组件配置,并让我们测试web框架. 示例模块可以在线下载,可以使用以下…
作者:苏州-微尘 Odoo中,在Python类里定义的模型及字段信息,可在系统中直接查看.为用户开启技术特性权限后,就可以通过菜单 [设置->技术->数据结构->模型] 进入列表视图,点击列表中的任一模型,进入表单视图,可看到该模型的具体信息. 图1 数据模型 主要字段说明说下, 模型:即模型的名称,由Python类的_name属性指定. 它通常相应Postgresql数据库中的一张表.以sale.orer为例.其相应的表为sale_order. 类型:类型包含两种 - 基础对象/自己定…
上一篇内容:如何快速在odoo中创建自己的菜单 前言 上面的内容我们已经学会了如何去创建odoo的菜单,下面我们要学习的是odoo的基础视图tree视图,我们的目标是实现型号管理的列表页面 创建model 之前我们已经学了简单的创建了一个菜单,我们也知道了视图的渲染是离不开model的支持的,我们现在的目标是在型号管理中创建tree视图,那么我们就要先创建型号管理对应的model 电商中都有SPU和SKU的概念,这里我们就以手机为举例,那么一个手机型号就是一个简单的SPU,对应手机的不同的颜色和…
插件效果图 定义js odoo.define('auto_widget',function(require){ "use strict"//通过扩展AbstractField来扩展 fieldvar AbstractField = require('web.AbstractField');var fieldRegistry = require('web.field_registry');var core = require('web.core');var qweb =core.qweb…
# 案例0004针对form表单 class Task(models.Model): _name = "project.task" _description = "对于项目中的阶段步骤用many2one字段来展示:一般步骤上selection型字段展示" def _get_default_stage_id(self): """ Gives default stage_id 该任务获取默认的阶段""" pro…