惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
D
DataBreaches.Net
博客园 - 三生石上(FineUI控件)
H
Hacker News: Front Page
Know Your Adversary
Know Your Adversary
Recorded Future
Recorded Future
The Hacker News
The Hacker News
Help Net Security
Help Net Security
月光博客
月光博客
L
LINUX DO - 热门话题
Hacker News - Newest:
Hacker News - Newest: "LLM"
T
Tor Project blog
Security Archives - TechRepublic
Security Archives - TechRepublic
aimingoo的专栏
aimingoo的专栏
Attack and Defense Labs
Attack and Defense Labs
Project Zero
Project Zero
V
Vulnerabilities – Threatpost
SecWiki News
SecWiki News
S
Security @ Cisco Blogs
Blog — PlanetScale
Blog — PlanetScale
V2EX - 技术
V2EX - 技术
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
A
Arctic Wolf
T
Threat Research - Cisco Blogs
WordPress大学
WordPress大学
H
Heimdal Security Blog
小众软件
小众软件
C
Check Point Blog
T
Tailwind CSS Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
C
Cyber Attacks, Cyber Crime and Cyber Security
Vercel News
Vercel News
云风的 BLOG
云风的 BLOG
Last Week in AI
Last Week in AI
L
LangChain Blog
博客园 - Franky
Martin Fowler
Martin Fowler
MongoDB | Blog
MongoDB | Blog
P
Proofpoint News Feed
T
The Exploit Database - CXSecurity.com
P
Palo Alto Networks Blog
J
Java Code Geeks
Apple Machine Learning Research
Apple Machine Learning Research
C
Cybersecurity and Infrastructure Security Agency CISA
C
CXSECURITY Database RSS Feed - CXSecurity.com
Microsoft Security Blog
Microsoft Security Blog
Google DeepMind News
Google DeepMind News
有赞技术团队
有赞技术团队
MyScale Blog
MyScale Blog
S
Schneier on Security

博客园 - linwinfan

ZABBIX新功能系列2-通过Webhook调用虚拟化API重启故障主机 ZABBIX新功能系列1-使用Webhook将告警主动推送至第三方系统 xenserver添加静态路由 redmine常见问题 Opennms 问题整理 KEEPALIVED 双机自动切换部署备忘 使用flume-ng聚合双活Nginx日志 迁移 VMware 虚拟机到 KVM 安装设置squid3代理更新 iscsiadm基本用法 第4章.计算节点 第三章.可扩展性 第二章 云控制器设计 OpenStack实施管理手册-第一章 部署准备 VMware workstation to exsi openQRM在CENTOS64上的安装部署 在服务器上排除问题的头五分钟(转) u960s指令 某程序反向工程记录
OpenERP 使用与开发笔记(一)
linwinfan · 2013-08-21 · via 博客园 - linwinfan

一直关注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-8",
    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-8
LC_ALL=en_US.UTF-8

完成后上面的问题没有了,但仍然不能正常启动,通过反复分析日析,发现安装的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"/>。但您必须注意,对应的对象必须定义至少一个查询视图,否则将报错。