### Kanban 用于组织任务、生产过程等,它们的根元素是 `<kanban>`. 看板视图显示一组可能的组合柱卡。每一张卡片代表一个记录,并且每一列都是聚合字段的值。 例如,项目任务可以由阶段组织(每一列是一个阶段),或由负责(每一列是一个用户),等等。 看板视图定义每个卡的结构作为一个组合的形式要素(包括基本的HTML)和 [QWeb](https://www.odoo.com/documentation/9.0/reference/qweb.html#reference-qweb). 练习 Kanban 视图 添加一个看板视图显示按课程班(列这样的课程)。 1. 添加一个整数 `color` 字段到 *Session* 模型 2. 补充看板查看和更新的作用 *openacademy/models.py* ~~~ python duration = fields.Float(digits=(6, 2), help="Duration in days") seats = fields.Integer(string="Number of seats") active = fields.Boolean(default=True) color = fields.Integer() instructor_id = fields.Many2one('res.partner', string="Instructor", domain=['|', ('instructor', '=', True), ~~~ *openacademy/views/openacademy.xml* ~~~ xml </record> <record model="ir.ui.view" id="view_openacad_session_kanban"> <field name="name">openacad.session.kanban</field> <field name="model">openacademy.session</field> <field name="arch" type="xml"> <kanban default_group_by="course_id"> <field name="color"/> <templates> <t t-name="kanban-box"> <div t-attf-class="oe_kanban_color_{{kanban_getcolor(record.color.raw_value)}} oe_kanban_global_click_edit oe_semantic_html_override oe_kanban_card {{record.group_fancy==1? 'oe_kanban_card_fancy' : ''}}"> <div class="oe_dropdown_kanban"> <!-- dropdown menu --> <div class="oe_dropdown_toggle"> <i class="fa fa-bars fa-lg"/> <ul class="oe_dropdown_menu"> <li> <a type="delete">Delete</a> </li> <li> <ul class="oe_kanban_colorpicker" data-field="color"/> </li> </ul> </div> <div class="oe_clear"></div> </div> <div t-attf-class="oe_kanban_content"> <!-- title --> Session name: <field name="name"/> <br/> Start date: <field name="start_date"/> <br/> duration: <field name="duration"/> </div> </div> </t> </templates> </kanban> </field> </record> <record model="ir.actions.act_window" id="session_list_action"> <field name="name">Sessions</field> <field name="res_model">openacademy.session</field> <field name="view_type">form</field> <field name="view_mode">tree,form,calendar,gantt,graph,kanban</field> </record> <menuitem id="session_menu" name="Sessions" parent="openacademy_menu" ~~~