重载createInstance(cls, pool, module, cr)时,我测试了一下改变_sql_contraints,但改变不了natrr['_sql_contraints']的值,就为了这个搞了好长时间,后来不知怎样出现了提示信息与本来不一样了.太迟了就没有再试,就把设想发在网上了
zjxplq
-
关于系统的 _constraints 如何删除,或者继承? -
关于系统的 _constraints 如何删除,或者继承?从createInstance(cls, pool, module, cr)源码看,为了删除现有的系统的_constraints,可以定义一个与要删除的_constrains同名的约束,且这个约束会一定满足就行。
-
关于系统的 _constraints 如何删除,或者继承?可能在自己的osv类中重载createInstance(cls, pool, module, cr)可能可以实现,从源码上看是在此处真正动态创建类的,且实例化的.我试了一下_sql_contraints,处理了父类继承过来的约束后,违反约束时出现的提示与父类不一样了。不过_constraints没有真正试过
-
显示记录创建者姓名谢谢指正。这个方法其实在document模块中有应用。然后是shelly指导下完成的。感谢shelly
-
显示记录创建者姓名有时创建一个记录时需要把创建者的姓名显示出来,下面说明操作方法:
为了能够显示创建者姓名,需要在_columns中显式的定义create_uid,代码如下:
class demo(osv.osv):
_name = 'demo.demo'
_description = doc
_columns = {
'create_uid': fields.many2one('res.users', 'Creator', readonly=True),
'name': fields.char('名称',size=20, required=True),
}
demo()
然后在视图中如下定义:
<record model="ir.ui.view" id="demo_demo_tree_view">
<field name="name">demo.demo.tree</field>
<field name="model">demo.demo</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="string">
<field name="name" select="1"/>
<field name="create_uid" readonly="1"/>
</tree>
</field>
</record>
<record model="ir.ui.view" id="demo_demo_form_view">
<field name="name">demo.demo.form</field>
<field name="model">demo.demo</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="string">
<field name="name"/>
</form>
</field>
</record>
如果修改后osv与视图后,需重启服务器 -
修改search limit的默认值你的方法更好
-
修改search limit的默认值为了修改search limit的默认值可以在postgresql运行:
UPDATE ir_act_window SET "limit" = 500 WHERE "limit" = 80;
来搞定修改 -
发处女贴庆祝!使用Eclipse+PyDev 断点调试OE的Server端成功可以使用命令行来产生conf文件,这样就不必再下载all one,再安装的麻烦了,也不要去手工改路径了
-
Openerp6.02下数据库备份参考了贴子http://www.openerp.com/forum/topic26215.html终于完成数据库的备份操作,现在总结如下:
在windows下完成备份:
1.备份时密码是openerp超级管理员的密码,而不是postgresql的超级管理员密码
2.还必须在openerp-server.conf中设置pg_path = c:....\postgresql\bin
3.重启openerp服务器 -
创建openerp server的配置文件在使用openerp-server源码来运行时,需要配置文件,在教程Tutorial on Setting up OpenERP 6.0.2 Source Code in Eclipse under windows platform中,使用先安装all in one,然后copy openerp-server的配置文件,这样的方式虽然可行,但太麻烦了。看到官方教程openobject-install中使用命令行来生成配置文件,现在把它译在这里
1、进入命令行方式,转到openerp-server的bin文件夹中
2、输入命令:
python openerp-server.py -d <db_name> -r <db_user> -w <db_password> --db_host=localhost --db_port=5432 --logfile="<logfile>" --timezone=Asia/Shanghai -s --stop-after-init
即可在当前文件夹中生成配置文件。
以后就可以使用python openerp-server.py来运行服务器程序了。
命令行参数解译如下:
-d <db_name> 数据库名
-r <db_user> 数据库管理员名
-w <db_password> 数据库管理员密码
--db_host 数据库服务器地址
--db_port 数据库服务器端口
--timezone 时区
-s 保存当前openerp server的配置
-stop-after-init 初始化后停止erp服务器 -
Openerp中帐户名、密码与端口在第一次使用openerp时,就把帐户名、密码与端口弄错了。感谢群中广东-Joshua提供帮助。为了其他兄弟不再在这个问题上浪费时间,故把它写下来。
在openerp-server.conf配置文件中,有如下几行:
admin_passwd = admin
db_user =openpg
db_password =openpgpwd
netrpc_port = 8070
xmlrpc_port = 8069
db_port =5432
这几行与登录是相关的
利用openerp gtk client来登录时,服务器的端口不是5432(在第一次运行时,端口默认是5432,费了好长时间搞不定)。因为openerp client是连接openerp-server的,而不是直接连接postgresql数据库。因此,端口应该是rpc的端口,8070或8069.此处的用户名并不是数据库管理者的用户名,而是openerp-server的管理员,即admin,密码则是配置文件中admin_passwd的值。利用浏览器来登录openerp的用户名与密码也是类似的
配置文件中db_usr是指数据库管理员用户,db_password是指数据库管理员密码