### 表单视图 表单用于创建和编辑单个记录。 他们的根元素是 `<form>`. 他们组成的高层次结构元素(groups, notebooks)和互动元素(buttons 和 fields): ~~~ xml <form string="Idea form"> <group colspan="4"> <group colspan="2" col="2"> <separator string="General stuff" colspan="2"/> <field name="name"/> <field name="inventor_id"/> </group> <group colspan="2" col="2"> <separator string="Dates" colspan="2"/> <field name="active"/> <field name="invent_date" readonly="1"/> </group> <notebook colspan="4"> <page string="Description"> <field name="description" nolabel="1"/> </page> </notebook> <field name="state"/> </group> </form> ~~~ 练习 自定义使用XML视图的形式 创建您自己的窗体视图为对象。数据显示:本课程名称及说明。 *openacademy/views/openacademy.xml* ~~~ xml <?xml version="1.0" encoding="UTF-8"?> <openerp> <data> <record model="ir.ui.view" id="course_form_view"> <field name="name">course.form</field> <field name="model">openacademy.course</field> <field name="arch" type="xml"> <form string="Course Form"> <sheet> <group> <field name="name"/> <field name="description"/> </group> </sheet> </form> </field> </record> <!-- window action --> <!-- The following tag is an action definition for a "window action",--> ~~~ 练习 Notebooks 在课程表视图中,将描述字段放在标签下,这样可以更容易地在后面添加其他标签,包含附加信息。 修改课程表如下: *openacademy/views/openacademy.xml* ~~~ xml <sheet> <group> <field name="name"/> </group> <notebook> <page string="Description"> <field name="description"/> </page> <page string="About"> This is an example of notebooks </page> </notebook> </sheet> </form> </field> ~~~ 窗体视图也可以使用普通的HTML更灵活的布局: ~~~ <form string="Idea Form"> <header> <button string="Confirm" type="object" name="action_confirm" states="draft" class="oe_highlight" /> <button string="Mark as done" type="object" name="action_done" states="confirmed" class="oe_highlight"/> <button string="Reset to draft" type="object" name="action_draft" states="confirmed,done" /> <field name="state" widget="statusbar"/> </header> <sheet> <div class="oe_title"> <label for="name" class="oe_edit_only" string="Idea Name" /> <h1><field name="name" /></h1> </div> <separator string="General" colspan="2" /> <group colspan="2" col="2"> <field name="description" placeholder="Idea description..." /> </group> </sheet> </form> ~~~