初始化
__init__.py
from . import models
from . import controllers
from . import wizard
def add_room_hook(env):
room_data1 = {'name': 'Room 1', 'room_no': '01'}
room_data2 = {'name': 'Room 2', 'room_no': '02'}
env['hostel.room'].create([room_data1, room_data2])
def pre_init_hook_hostel(env):
env['ir.model.data'].search([
('model', 'like', 'hostel.hostel'),
]).unlink()
def uninstall_hook_user(env):
hostel = env['res.users'].search([])
hostel.write({'active': False})
__manifest__.py
{
"name": "Hostel Management",
"summary": "Manage Hostel easily",
........
'pre_init_hook':'pre_init_hook_hostel',
'post_init_hook': 'add_room_hook',
'uninstall_hook': 'uninstall_hook_user',
"demo": [
'data/room_demo.xml'
],
"installable": True,
}
button type="action"
<button type="action" name="%(my_hostel.hostel_room_category_action)d" string="Open Hotel Room Category" />
点击按钮跳转页面
searchpanel
允许在任何多记录视图的左侧显示搜索面板。
<searchpanel>
<field name="state" expand="1" select="multi" icon="fa-check-square-o" enable_counters="1"/>
</searchpanel>
enable_counters
默认为假。如果设置为 true或1,则记录计数器将被计算并显示(如果非零)。
expand
默认为假。如果设置为 false 类别或具有 0 条记录的过滤器将被隐藏。
select
决定行为和显示。
one(默认):最多可以选择一个值。支持的字段类型有 many2one 和 selection。
multi:可以选择多个值(复选框)。支持的字段类型有 many2one、many2many 和 selection。