OpenERP 使用与开发笔记(一)
一直关注OpenERP,但一直未真正使用。最近一些数据想规范管理,免得使和EXCEL与WORD等到处找,所以想到OpenERP的自定义功能比较好,就再次找来相关资料重新拾掇起来。在这过程中,发现了许多使用与开发上的一些问题,特此记录下来,以便后查。
一、安装
操作系统:Ubuntu12.04
修改:echo 'deb http://nightly.openerp.com/7.0/nightly/deb/ ./' >> /etc/sources.list
执行:apt-get install openerp
问题:先后安装了2台(一台本机测试,一台正式部署),正式部署的发现Postgresql不能正常启动,开始总是提示:
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_MESSAGES = “en_IN.UTF-",
LANG = “en_US"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
解决方案:
1) 执行:sudo locale-gen en_US.UTF-8
2) 在 /etc/environment 中添加以下二行
LANG=en_US.UTF-
LC_ALL=en_US.UTF-
完成后上面的问题没有了,但仍然不能正常启动,通过反复分析日析,发现安装的Postgrel没有相关安装文件和初始数据库,从我本机复制相关文件到相同目录并做简单修改后正常启动。
安装完成,登录进入,选择:设置->用户 ,修改管理员用户设置启用“技术特性”后重性登录。
二、关于自定义数据表与表单等
其实OpenERP的自定义功能确实很方便,基本上普通的所有的数据编辑功能都能完成,但仍建议你自已试着开发完成一个模块,这样你能对自定义的操作会有更深的体会。
三、模块开发问题
1.自定义的模块要注意部署的位置,在Windows可能比较简单,但在Windows我却发现很多个addons目录(/usr/share/pyshared/openerp/addons与 /usr/lib/pymodules/python2.7/openerp/addons),经过测试在Ubuntu下应放到:/usr/lib/pymodules/python2.7/openerp/addons目录中。
2.上传后,选择菜单:设置->模块->更新模块列表 根据向导完成模块更新。
3.点击“可安装模块”,这时你将看到系统已安装的模块。可能你开始会和我一样,怎么找不到新上传的模块呢,在搜索框里移除预定的过滤,即不是只显示已安装的,而是显示所有的。然后输入定义的模块名称,即可以找到你开发的模块。点击后根据向导进行安装,第一次开发部署肯定会遇到很多问题,根据提示,更详细信息在/var/log/openerp中的可以找到。
4.有修改上传后,为了可正常安装,需要执行:service openerp force-reload.
5.第一次上传我们可能会上先上传一个压缩的ZIP包,然后解压,解压后忘记删除它,然后每次只上传更新了的文件到解压缩的文件夹中。对于XML文件好象是可没有问题的,但是py源代码文件系统只会加载原zip包中的源文件。(估计是一个BUG),困扰了我好久,我测试的在本机好好的模块,上传到正式部署的服务器就不行了。
6.定制的一个FORM中的某个Page不显示字段的Label,与其它比较发现是在Page节点下没有Group节点,添加即可,如:<page><group><field name='name'/></group></page>.
7.one2many关系编辑问题。发现一个定义的VIEW可以在one2many共享.但有一个问题,是共享的字段会显示并在第一编辑空白显示many2one字段。经过研究找到解决方案:首先在one2many视图对应字段类似这样设置:<field name="lxr_ids" context="{'edit_from_parent':'1'}">。而在many2one视图中:<field name="dept_id" invisible="context.get('edit_from_parent', '0') in ['1']"/>。
8.将one2many字段设置编辑方式为many2many.发现one2many列表只能添加记录,而不能选择已经有的记录,这样你可以通过修改widget实现,如<field name="line_ids" widget="many2many"/>。但您必须注意,对应的对象必须定义至少一个查询视图,否则将报错。
OpenERP 使用与开发笔记(一)的更多相关文章
- [开发笔记]-未找到与约束ContractName Microsoft.VisualStudio.Text.ITextDocumentFactoryService...匹配的导出【转载自:酷小孩】
原文地址:http://www.cnblogs.com/babycool/p/3199158.html 今天打算用VisualStudio2012做一个js效果页面测试的时候,打开VS2012新建项目 ...
- EasyUI 开发笔记(二)
接上篇 :EasyUI 开发笔记(一) (http://www.cnblogs.com/yiayi/p/3485258.html) 这期就简单介绍下, easyui 的 list 展示, 在easy ...
- EasyUI 开发笔记(一)
由于某些原因,在公司做的后台需要改成类似于Ext.js 形式的后台,主要看好其中的 框架布局,以及tab开页面和弹出式内部窗体. 后来看看,改成EasyUI,较Ext.js 库小很多,也便于公司的初级 ...
- [Openwrt 项目开发笔记]:Openwrt平台搭建(一)
[Openwrt项目开发笔记]系列文章传送门:http://www.cnblogs.com/double-win/p/3888399.html 正文: 最近开始着手进行Openwrt平台的物联网网关设 ...
- Android移动APP开发笔记——Cordova(PhoneGap)通过CordovaPlugin插件调用 Activity 实例
引言 Cordova(PhoneGap)采用的是HTML5+JavaScript混合模式来开发移动手机APP,因此当页面需要获取手机内部某些信息时(例如:联系人信息,坐标定位,短信等),程序就需要调用 ...
- Android移动APP开发笔记——最新版Cordova 5.3.1(PhoneGap)搭建开发环境
引言 简单介绍一下Cordova的来历,Cordova的前身叫PhoneGap,自被Adobe收购后交由Apache管理,并将其核心功能开源改名为Cordova.它能让你使用HTML5轻松调用本地AP ...
- 开发笔记:基于EntityFramework.Extended用EF实现指定字段的更新
今天在将一个项目中使用存储过程的遗留代码迁移至新的架构时,遇到了一个问题——如何用EF实现数据库中指定字段的更新(根据UserId更新Users表中的FaceUrl与AvatarUrl字段)? 原先调 ...
- Lucene/Solr搜索引擎开发笔记 - 第1章 Solr安装与部署(Jetty篇)
一.为何开博客写<Lucene/Solr搜索引擎开发笔记> 本人毕业于2011年,2011-2014的三年时间里,在深圳前50强企业工作,从事工业控制领域的机器视觉方向,主要使用语言为C/ ...
- [openwrt 项目开发笔记]: 传送门
“Openwrt 项目开发笔记”系列传送门: [Openwrt 项目开发笔记]:Openwrt平台搭建(一) (2014-07-11 00:11) [Openwrt 项目开发笔记]:Openwrt平台 ...
随机推荐
- JAVE not work in linux
1, it will print out exception, but still can convert the audio 2, it works in windows not linux, ne ...
- Codeforces 717G Underfail(最小费用最大流 + AC自动机)
题目 Source http://codeforces.com/problemset/problem/717/G Description You have recently fallen throug ...
- ZeroMQ接口函数之 :zmq_setsockopt –设置ZMQ socket的属性
ZeroMQ API 目录 :http://www.cnblogs.com/fengbohello/p/4230135.html 本文地址 :http://www.cnblogs.com/fengbo ...
- python之 sqlalchemy
one To many #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ @author: zengchunyun & ...
- mac优秀软件介绍
1.首先是office软件: Microsoft_Office_2016_Installer.pkg 然后是一个破解软件 FWMSO2016VLU2.0.dmg_.zip 两个都不可少 2.然后是如果 ...
- SOLD原则
借鉴: 1. 单一职责原则 单一职责原则 (Single Responsibility Principle,SRP) 指出,每个方法或类应当有且仅有 一个改变的理由.这意味着每个方法或类应当做一件事情 ...
- 清理session的案例
and OPNAME ='Sort Output'; and OPNAME ='Sort Output'; and OPNAME ='Sort Output' ); select 'alter sys ...
- iOS开发之XCode模拟器不能连接网络
新装的Xcode7 编译程序 出现 #warning: 获取app配置信息失败: The resource could not be loaded because the App Transport ...
- 读取java目录中相同目录、相同名称的文件
使用ClassLoader的getResources方法(注意,不是getResource,少了s),可获得指定文件的包含jar包名称的多个路径值,然后依次读取文件即可. 使用class,只能通过ge ...
- 在将 varchar 值 '' 转换成数据类型 int 时失败
我们有时候用in语句的时候,发现存在Sql注入漏洞,想参数化处理一下,遇到语句执行问题!! declare @ids varchar() set @ids='216,218' select * fro ...