为什么OpenErp在postgresql数据库表中创建一些默认字段

为什么OpenErp在postgresql数据库表中创建一些默认字段,openerp,openerp-7,openerp-8,Openerp,Openerp 7,Openerp 8,有人能解释一下为什么OpenErp会在posgresql数据库表中创建一些默认值吗 在OpneErp模块中创建新对象时 在电子邮件模板模块中 email.template对象-->创建 一些默认字段 像 用描述解释每个字段 而从基本模块中的Openerp中继服务器,如 未在PostgreSQL数据库表中创建此类字段 我的问题是为什么要在一些基本模块中创建默认字段和为什么不创建默认字段???您仔细检查基本模块表resu users和resu partner id, create_uid, crea

有人能解释一下为什么OpenErp会在posgresql数据库表中创建一些默认值吗 在OpneErp模块中创建新对象时

在电子邮件模板模块中 email.template对象-->创建 一些默认字段 像

用描述解释每个字段

而从基本模块中的Openerp中继服务器,如

未在PostgreSQL数据库表中创建此类字段


我的问题是为什么要在一些基本模块中创建默认字段和为什么不创建默认字段???

仔细检查基本模块表
resu users
resu partner

id, create_uid, create_date, write_date, write_uid
这背后的原因是无论何时创建新表,都必须继承
osv.osv
基类

示例:我正在创建项目表,并从
osv.osv
继承,因此此表会自动创建额外的五列id、create\u-uid、create\u-date、write\u-uid以及您定义的项目名称列。共创建6列

project.py 优势
  • 要知道哪个用户正在使用时间戳(日期时间)创建此表

  • ID字段的自动增量。所以这个列是主键

  • 哪个用户(write_uid)正在更新表行,并将带有时间戳的存储更新到
    write_date
    列中

    因此,上述原因有助于我们跟踪时间和用户ID


  • 如果设置了\u log\u access=False属性,将不会在SQL表中创建四个字段:创建uid、创建日期、写入uid、写入日期

    project.py 现在,您只检查为该表创建的2列


    希望这对你有帮助

    您必须验证您的数据库包,以下字段已存在于
    res\u用户
    res\u合作伙伴

    以及字段:

    • id
      :每个特定记录的索引编号序列 桌子

    • create\u uid
      :创建特定记录的用户id

    • 创建日期
      :记录的创建日期

    • write\u uid
      :上次更新特定记录的用户id

    • 写入日期
      :记录更新日期


    这没关系,我的错误是,你创造了一个美好的田野,亲爱的。。!!
     res_users and res_partner
    
    id, create_uid, create_date, write_date, write_uid
    
    from openerp.osv import osv, fields
    
    class My_project(osv.osv):
        _name = 'my.project'
        _description = 'My project'
        _columns = {
             'project_name':fields.char('Project Name',size=30),
        }
    
    from openerp.osv import osv, fields
    
    class My_project(osv.osv):
        _name = 'my.project'
        _description = 'My project'
        _log_access = False
        _columns = {
             'project_name':fields.char('Project Name',size=30),
        }