zoukankan      html  css  js  c++  java
  • Odoo13_一个模块实现对应多个视图

    1.models.py

    # -*- coding: utf-8 -*-
    from odoo import api, fields, models
    
    
    class ZeroneBook(models.Model):
        _name = "zerone.book"
        _description = "Zerone Books"
     
        name = fields.Char(string="图书名称", required=True)
        code = fields.Char(string="图书编号", required=True)
        state = fields.Selection([('draft', '未被借出'), ('rent', '已经借出'), ('return', '已经归还')],
                                default='draft', string="状态")
    
        def action_bjl(self):
            self.state = 'draft'
        def action_jc(self):
            self.state = 'rent'
            
        def action_gh(self):
            self.state = 'return'
        def action_xbhl(self):
            self.state = 'rent'

    2.views.xml

    <?xml version="1.0" encoding="utf-8"?>
    <odoo>
        <data>
        <!-- 主菜单列表视图 -->
            <record id="view_books_tree" model="ir.ui.view">
                <field name="name">book.tree</field>
                <field name="model">zerone.book</field>
                <field name="arch" type="xml">
                    <tree string="Books">
                        <field name="name"/>
                        <field name="code"/>
                        <field name='state'/>
                    </tree>
                </field>
            </record>
            <record id="view_zerone_books_form" model="ir.ui.view">
                <field name="name">zerone.book.form</field>
                <field name="model">zerone.book</field>
                <field name="arch" type="xml">
                    <form string="Books" create="false">
                        <sheet string="Books">
                            <div style="text-align: center"><h1>借书FORM</h1></div>
                            <group col='4'>
                                <field name="name"/>
                                <field name="code"/>
                                <field name="state"/>
                            </group>
                        </sheet>
                    </form>
                </field>
            </record>
            <!--借出列表视图-->
            <record id="view_zerone_books_tree" model="ir.ui.view">
                <field name="name">zerone.book.tree</field>
                <field name="model">zerone.book</field>
                <field name="arch" type="xml">
                    <tree string="Books" create="false" import="false">
                        <field name="name"/>
                        <field name="code"/>
                        <field name='state'/>
                    </tree>
                </field>
            </record>
    
            <!--借出form视图-->
            <record id="view_zerone_books_form" model="ir.ui.view">
                <field name="name">zerone.book.form</field>
                <field name="model">zerone.book</field>
                <field name="arch" type="xml">
                    <form string="Books" create="false">
                        <header>
                            <button name="action_bjl" type="object" string="不借了" class="oe_highlight" states="rent"/>
                            <button name="action_jc" type="object" string="借出" class="oe_highlight" states="draft"/>
                            <field name="state" widget="statusbar" statusbar_visible="draft,rent,return"/>
                        </header>
                        <sheet string="Books">
                            <div style="text-align: center"><h1>借书FORM</h1></div>
                            <group col='4'>
                                <field name="name"/>
                                <field name="code"/>
                            </group>
                        </sheet>
                    </form>
                </field>
            </record>
            <!--还书列表视图-->
            <record id="view_huanshu_books_tree" model="ir.ui.view">
                <field name="name">huanshu.book.tree</field>
                <field name="model">zerone.book</field>
                <field name="arch" type="xml">
                    <tree string="Books" create="false" import="false">
                        <field name="name"/>
                        <field name="code"/>
                        <field name='state'/>
                    </tree>
                </field>
            </record>
            <!--归还form视图-->
            <record id="view_huanshu_books_form" model="ir.ui.view">
                <field name="name">huanshu.book.form</field>
                <field name="model">zerone.book</field>
                <field name="arch" type="xml">
                    <form string="Books" create="false">
                        <header>
                            <button name="action_gh" type="object" string="归还" class="oe_highlight" states="rent"/>
                            <button name="action_xbhl" type="object" string="先不还了" class="oe_highlight" states="return"/>
                            <field name="state" widget="statusbar" statusbar_visible="draft,rent,return"/>
                        </header>
                        <sheet string="Books">
                            <div style="text-align: center"><h1>还书FORM</h1></div>
                            <group col='4'>
                                <field name="name"/>
                                <field name="code"/>
                            </group>
                        </sheet>
                    </form>
                </field>
            </record>
            <record id="action_books" model="ir.actions.act_window">
                <field name="name">主菜单动作</field>
                <field name="res_model">zerone.book</field>
                <field name="view_mode">tree,form</field>
              <field name="view_id" ref="view_books_tree"/>
            </record>
            <!--借出动作-->
            <record id="action_zerone_books" model="ir.actions.act_window">
                <field name="name">借书</field>
                <field name="res_model">zerone.book</field>
                <field name="view_mode">tree,form</field>
                <field name="view_id" ref="view_zerone_books_tree"/>
            </record>
            <record model="ir.actions.act_window.view" id="jieshu_1">
                <field name="sequence" eval="1"/>
                <field name="view_mode">tree</field>
                <field name="view_id" ref="view_zerone_books_tree"/>
                <field name="act_window_id" ref="action_zerone_books"/>
            </record>
    
            <record model="ir.actions.act_window.view" id="jieshu_2">
                <field name="sequence" eval="2"/>
                <field name="view_mode">form</field>
                <field name="view_id" ref="view_zerone_books_form"/>
                <field name="act_window_id" ref="action_zerone_books"/>
            </record>
            <!-- 还书动作 -->
            <record id="action_huanshu_books" model="ir.actions.act_window">
                <field name="name">还书</field>
                <field name="res_model">zerone.book</field>
                <field name="view_mode">tree,form</field>
                <field name="view_id" ref="view_huanshu_books_tree"/>
            </record>
            <record model="ir.actions.act_window.view" id="huanshu_1">
                <field name="sequence" eval="1"/>
                <field name="view_mode">tree</field>
                <field name="view_id" ref="view_huanshu_books_tree"/>
                <field name="act_window_id" ref="action_huanshu_books"/>
            </record>
            <record model="ir.actions.act_window.view" id="huanshu_2">
                <field name="sequence" eval="2"/>
                <field name="view_mode">form</field>
                <field name="view_id" ref="view_huanshu_books_form"/>
                <field name="act_window_id" ref="action_huanshu_books"/>
            </record>
    
    <!-- 按钮 -->
            <menuitem name="Books" id="menu_books_root" sequence="50" action="action_books"/>
            <menuitem action="action_zerone_books" id="menu_zerone_books" name="借书" parent="menu_books_root"/>
            <menuitem action="action_huanshu_books" id="menu_guihuan_books" name="还书" parent="menu_books_root"/>
        </data>
    </odoo>
  • 相关阅读:
    ReactiveCocoa入门教程——第一部分【转载】
    浅谈iOS中MVVM的架构设计与团队协作【转载】
    如何使用CocoaPods安装使用及配置私有库以及管理依赖库 【原创】
    工作经验【原创】
    xcode常见报错调试【原创】
    彻底解决_OBJC_CLASS_$_某文件名", referenced from:问题(转)
    Android遇到的那些坑
    Android开发和Android Studio使用教程
    CGI是什么 搜索了这么多,大致看明白了保留下来。
    不同手机根据坐标计算控件、图片的像素,px 与 dp, sp换算公式?
  • 原文地址:https://www.cnblogs.com/wangdianchao/p/13652624.html
Copyright © 2011-2022 走看看