加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 无法在openERP中导入自定义模块

发布时间:2020-12-20 11:32:40 所属栏目:Python 来源:网络整理
导读:我在openerp中使用 python和xml完成??了简单的自定义模块.但我无法在openerp中导入.我的模块没有在openerp中显示. 这是__init__py import osos.environ['TZ'] = 'UTC' # Set the timezone...import time # ... *then* import time.del osdel time# The hard-
我在openerp中使用 python和xml完成??了简单的自定义模块.但我无法在openerp中导入.我的模块没有在openerp中显示.

这是__init__py

import os
os.environ['TZ'] = 'UTC' # Set the timezone...
import time              # ... *then* import time.
del os
del time

# The hard-coded super-user id (a.k.a. administrator,or root user).
SUPERUSER_ID = 1

import addons
import cli
import conf
import loglevels
import modules
import netsvc
import osv
import pooler
import release
import report
import service
import sql_db
import tools
import workflow
import sim
# backward compatilbility
# TODO: This is for the web addons,can be removed later.
wsgi = service
wsgi.register_wsgi_handler = wsgi.wsgi_server.register_wsgi_handler
# Is the server running in multi-process mode (e.g. behind Gunicorn).
# If this is True,the processes have to communicate some events,# e.g. database update or cache invalidation. Each process has also
# its own copy of the data structure and we don't need to care about
# locks between threads.
multi_process = False

# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

这是__openerp__.py

{
'name': 'Student Information Management','version': '0.1','category': 'Tools','description': """This module is for the Student Information Management.""",'author': 'Mir Nauman Tahir','website': 'http://mirnauman.wordpress.com/','depends': ['base'],'init_xml': [],'update_xml': ['sim_view.xml'],'demo_xml': [],'installable': True,'active': True,}

这是sim_view.xml

<?xml version="1.0"?>
<openerp>
<data>
<!-- ============== student================= -->
<!-- 1st part of the sim_view start-->
<record model="ir.ui.view" id="student_form">
<field name="name">Student</field>
<field name="model">sim.student</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Student" version="7.0">
<field name="name"/>
<field name="student_name"/>
<field name="father_name"/>
<field name="gender"/>
<field name="contact_no"/>
</form>
</field>
</record>
<!-- 1st part of the sim_view end-->
<!--2nd part of the sim_view start-->
<record model="ir.ui.view" id="student_tree">
<field name="name">Student</field>
<field name="model">sim.student</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Student">
<field name="name"/>
<field name="student_name"/>
<field name="father_name"/>
<field name="gender"/>
<field name="contact_no"/>
</tree>
</field>
</record>
<!--2nd part of the sim_view end-->
<!-- 3rd part of the sim_view start-->
<record model="ir.actions.act_window" id="action_student">
<field name="name">Student</field>
<field name="res_model">sim.student</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
</record>
<!--3rd part of the sim_view end-->
<!--4th part of the sim_view start-->
<menuitem&nbsp;name="SIM/Student/StudentInfo" id="menu_sim_student" action="action_student"/>
<!--4th part of the sim_view end-->
</data>
</openerp>

这个sim.py

from openerp.osv import fields

class student(osv.osv):
    _name = "sim.student"
    _description = "This table is for keeping personal data of student"
    _columns = {
        'name': fields.char('Registration Number',size=256,required=True),'student_name': fields.char('Student Name','father_name': fields.char('Father Name',size=256),'gender':fields.selection([('male','Male'),('female','Female')],'Gender'),'contact_no':fields.char('Contact Number',size=256)
    }
student()

我在openerp中看不到我的模块.我怎样才能解决这个问题?

解决方法

这样可以正常工作.试试这个.更新所有文件.

__openerp__.py   File

{
'name': 'Student Information Management','data': ['sim_view.xml'],'demo': [],'auto_install': False,'application': True,}


 __init__.py File

import sim




sim.py File


from openerp.osv import fields,osv
class student(osv.osv):
_name = "sim.student"
_description = "This table is for keeping personal data of student"
_columns = {
    'name': fields.char('Registration Number',size=256)
}
student()


sim_view.xml File

<?xml version="1.0"?>
<openerp>
<data>
<!-- ============== student================= -->
<!-- 1st part of the sim_view start-->
<record model="ir.ui.view" id="student_form">
<field name="name">Student</field>
<field name="model">sim.student</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Student" version="7.0">
<group>
<field name="name"/>
<field name="student_name"/>
<field name="father_name"/>
<field name="gender"/>
<field name="contact_no"/>
</group>
</form>
</field>
</record>
<!-- 1st part of the sim_view end-->
<!--2nd part of the sim_view start-->
<record model="ir.ui.view" id="student_tree">
<field name="name">Student</field>
<field name="model">sim.student</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Student">
<field name="name"/>
<field name="student_name"/>
<field name="father_name"/>
<field name="gender"/>
<field name="contact_no"/>
</tree>
</field>
</record>
<!--2nd part of the sim_view end-->
<!-- 3rd part of the sim_view start-->
<record model="ir.actions.act_window" id="action_student">
<field name="name">Student</field>
<field name="res_model">sim.student</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
</record>
<!--3rd part of the sim_view end-->
<!--4th part of the sim_view start-->
<menuitem name="SIM/Student/StudentInfo" id="menu_sim_student"  
      action="action_student"/>
<!--4th part of the sim_view end-->
</data>
</openerp>

更新完所有文件后,重新启动服务器,更新模块列表并找到您的
????设置>中的模块模块>已安装的模块 – 从那里卸下安装并在那里写下你的模块名称(即sim).

希望这肯定会奏效.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读