看一下partner这个表, 客户和供应商,都用这个表,那怎么区分呢:

供应商:

客户

注意这两个里面用domain来进行区分:
 
<field name="domain">[('s_category_id','!=',False)]</field>
<field name="domain">[('c_category_id','!=',False)]</field>
 
表相同,出来的结果不同。当然,这两个domain的字段不同,这样就能达到一个partner既是客户又是供应商的目的,当然,也方便其它操作,比如追踪买了多少单,卖了多少产品等等操作
 
然后,从不同的菜单或button里指定不同的action来调用不同的act_window吧:
 
<menuitemid='buy_vendor_menu'action='core.vendor_action'name="供应商"parent='menu_buy_master'sequence='10'/>
 
这样进入了vendor_action 对应的tree里,再点明细,进到form里
 
<menuitemid='sell_customer_menu'action='core.customer_action'name="客户"parent='menu_sell_master'sequence='10'/>
 
这样进入了customer_action对应的tree,form里
 
......
 
 

注:

(1)从many2one过来时可能会乱

(2)odoo视图窗口action id加载有优先级的顺序,如果菜单1中的form1和tree1引用了模型test,做了视图绑定,那么菜单2中的form2和tree2也要做相应的视图绑定,否则,启动服务后,前台界面加载的可能不是你需要显示的视图。

(3)这种写法虽然可以实现不同的窗口显示不同的菜单公用一个模型,但是,有一个地方需要注意,如果两个窗口菜单都使用了odoo的消息机制,那么当对其中的某个菜单进行操作的时候,给某位关注者发送了消息提醒,当该关注着用户登陆系统后,首先会受到消息提醒,在消息内容中,有时会携带相应的单号,当你点击单号跳转的时候可能会出现,系统不知道跳转到那个界面视图的情况。(这块需要小伙伴们仔细想一下。。。)

总结:

来自:http://note.youdao.com/share/?id=ed6f7d028c5bd5390796242ff527dd72&type=note#/

odoo开发笔记 -- 前台不同视图访问同一个模型的更多相关文章

  1. odoo开发笔记 -- 多个视图共用一个模型

    除了写序列优先绑定之外, 窗口引用的视图id也要绑定,否则页面加载的时候,可能不是自己需要显示的视图.例如:<field name="view_id" ref="c ...

  2. odoo开发笔记-tree列表视图拖拽排序

    odoo列表tree视图 拖拽排序 实现效果: 实现方式: 模型中定义字段: class CusYourModel(models.Model): """ 你的模型 &qu ...

  3. odoo开发笔记--前端搜索视图--按照时间条件筛选

    odoo在日常使用中,常会有这样的需要,比如,某个列表按照 日 .周.月.年来过滤搜索. 效果: 那么如何实现呢,如下是一段不同写法的样例代码,提供参考. <!--某模型 搜索视图--> ...

  4. odoo开发笔记 -- 多个子类继承同一个父类方法的执行顺序

    场景描述: odoo模块化开发的架构理念,科学&高效, 可以让很多业务场景,尽可能松耦合:让开发人员的主要精力,关注在当前的业务逻辑: 所谓「前人栽树,后人乘凉」,模块整体好比一棵大树, 开发 ...

  5. odoo开发笔记 -- 搜索视图继承扩展

    odoo开发笔记 -- 搜索视图继承扩展

  6. odoo开发笔记 -- div标签代替odoo button写法

    odoo开发笔记 -- div标签代替odoo button写法 并调用自定义js <footer> <div id="confirm_request_cloud_repo ...

  7. odoo开发笔记 -- 后台日志输出及分析

    odoo开发笔记 -- 后台日志输出及分析 附:日志分析软件

  8. odoo开发笔记 -- 权限机制

    转两篇关于权限的2篇文章,加深这方面的认识.注:后面附有原作者地址,希望不构成侵权. https://www.cnblogs.com/crazyguo/p/6999408.html 第一篇:http: ...

  9. odoo开发笔记 -- 用户配置界面如何增加模块访问权限

    在odoo设置界面,点击用户,进入用户配置界面,会看到: 访问权 | 个人资料菜单 在访问权 page菜单界面,可以看到系统预制的一些模块都会显示在这里, 那么,我们自己开发的模块如何显示在这块呢,从 ...

随机推荐

  1. react native的注释

    在react native 中是这样写注释的: {/*这里是注释*/}

  2. jq无法获取a标签动态id

    起初a标签是这样写的<a href="javascript:void(0)"  id="${menu.id}" value="${menu.na ...

  3. sql中的CONCAT函数运用实例1

    1 第一个例子 select a.*,b.name as repayment_type_value,c.name as status_value, d.product_name, CONCAT(a.d ...

  4. java基础-day31

    第08天 JDBC 今日内容介绍 u JDBC的概述及入门案例 u JDBC的API详解 u JDBC预处理对象 第1章   JDBC的概述及入门案例 1.1  JDBC概述和原理 1.1.1 JDB ...

  5. java基础-day10

    第10天 IO 今日内容介绍 u IO流概述及FileWriter类使用 u FileReader类使用 u 缓冲流介绍和使用 u IO流相关案例 第1章   IO流概述及FileWriter类使用 ...

  6. hdu 4902 线段树+逆向模拟

    http://acm.hdu.edu.cn/showproblem.php?pid=4902 出n个数,然后对这n个数进行两种操作: 如果是 1 l r x,则把 [l, r] 区间里面的每一个数都变 ...

  7. 初始Yarn

    YARN 产生背景 MapReduce1.x存在的问题:单点故障&节点压力大.不易扩展 资源利用率&运维成本 催生了YARN的诞生 YARN:不同计算框架可以共享同一个HDFS集群上的 ...

  8. 100度享乐电商网 jQuery

    $(function() {// x表示不会的需要注意 //新闻走马灯 x  var num = 0 var len = $(".wrap ul li").length $(&qu ...

  9. Swift3 KWWebView的页面屏幕自适应

    lazy var webView:WKWebView = { /* NSString *jScript = @"var meta = document.createElement('meta ...

  10. cxGrid控件过滤筛选后如何获更新筛选后的数据集

    cxGrid控件过滤筛选后如何获更新筛选后的数据集 (2015-06-19 12:12:08) 转载▼ 标签: delphi cxgrid筛选数据集 cxgrid过滤 分类: Delphi cxGri ...