这一步就是建立一个简单的view,目标是建立一个列表页和一个表单页面。这里的前端页面是xml格式,odoo会自动给你转化为前端页面,并把对应值都给你填写好。
看一下temolates.xml
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<!-- model 是对应的数据库表, id是你建立的view的id,这个是表单页-->
<record model="ir.ui.view" id="view_d_note">
<!-- name 是你这个view的名字 -->
<field name="name">笔记本</field>
<!-- type是这个view的类型, form是表单类型,tree是列表类型-->
<field name="type">form</field>
<!-- 这里的model对应的是你自己建立的模型的名字 -->
<field name="model">demonote.demonote</field>
<!-- arch里面是你要包含的模型的各种数据 -->
<field name="arch" type="xml">
<!-- 该表单的名字 和对应的版本号(这里还不清楚一般和odoo版本对应就行)-->
<form string="笔记" version="8.0">
<!-- col有多少列 -->
<group col="1">
<!-- 下面就是字段名字 -->
<field name="title"/>
<field name="date"/>
<field name="context"/>
<field name="type"/>
<!-- 这里因为是一对多的关系 inherit_id就是你要引用的view的id -->
<!-- 我在下面还未comment创建了一个view -->
<field name="comments" inherit_id="view_d_note_comment"/>
</group>
</form>
</field>
</record>
<!-- 这个是对应的列表页 -->
<record model="ir.ui.view" id="view_d_note_tree">
<field name="name">笔记本列表</field>
<field name="model">demonote.demonote</field>
<field name="arch" type="xml">
<tree>
<field name="title"/>
<field name="date"/>
<field name="comments" inherit_id="view_d_note_comment_tree"/>
</tree>
</field>
</record>
<!-- 评论的表单页 -->
<record model="ir.ui.view" id="view_d_note_comment">
<field name="name">评论</field>
<field name="type">form</field>
<field name="model">comment.comment</field>
<field name="arch" type="xml">
<form string="笔记" version="8.0">
<group col="1">
<field name="context"/>
<field name="time"/>
</group>
</form>
</field>
</record>
<!-- 评论的列表页 -->
<record model="ir.ui.view" id="view_d_note_comment_tree">
<field name="name">评论列表</field>
<field name="model">comment.comment</field>
<field name="arch" type="xml">
<tree>
<field name="context"/>
<field name="time"/>
</tree>
</field>
</record>
<!-- 这个是对应的右上角的search -->
<record model="ir.ui.view" id="view_d_note_search">
<field name="name">查询</field>
<field name="model">demonote.demonote</field>
<field name="arch" type="xml">
<search string="笔记">
<!-- 可搜索的内容 -->
<field name="title"/>
<field name="context"/>
</search>
</field>
</record>
<!-- 这个是添加列表页和表单页相互转化的动作-->
<record model="ir.actions.act_window" id="action_d_note_contract">
<field name="name">切换</field>
<field name="res_model">demonote.demonote</field>
<field name="view_type">form</field>
<field name="view_mode">form,tree</field>
<field name="view_id" ref="view_d_note_tree"/>
</record>
<!-- 这个是菜单页面,也就是你生成后能在最上面看到的那一栏-->
<menuitem id="demo" name="demonote" sequence="2"/>
<menuitem id="demo_note_sub" name="demonote管理" sequence="2" parent="demo"/>
<!-- 对应的action,点击后能进入 view_d_note_tree-->
<menuitem id="demo_denote_sub_sub" name="测试demonote" sequence="2" parent="demo_note_sub" action="action_d_note_contract"/>
</data>
</openerp>
写完之后在odoo里面更新一下你的模块,是不是看到视图了呢?
如果成功了就万事大吉,不过失败了也不要灰心,看一下报错,odoo会详细给你说明错误的位置。
好了一个简单的模块到这里就结束了,关于视图的更详细的介绍请看
https://www.odoo.com/documentation/9.0/reference/views.html
还有Qweb和Javascript的更高级应用的介绍