跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Flatly)
  • 不使用皮肤
折叠

Odoo 中文社区

  1. 主页
  2. 版块
  3. Odoo 开发与实施交流
  4. 学习OE 如何定义视图的类型

学习OE 如何定义视图的类型

已定时 已固定 已锁定 已移动 Odoo 开发与实施交流
4 帖子 3 发布者 2.8k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • C 离线
    C 离线
    ccdos
    写于 最后由 编辑
    #1

    在 阅读 OE 的文档中,
    关于 视图的类型 是由 type 字段 决定的;

    如: <field name="type">form</field>

    <br />&lt;record model=&quot;ir.ui.view&quot; id=&quot;client_form_view_2&quot;&gt;<br />&nbsp; &nbsp; &lt;field name=&quot;name&quot;&gt;client.form.view2&lt;/field&gt;<br />&nbsp; &nbsp; &lt;field name=&quot;model&quot;&gt;client&lt;/field&gt;<br />&nbsp; &nbsp; &lt;field name=&quot;priority&quot; eval=&quot;15&quot;/&gt;<br />&nbsp; &nbsp; &lt;field name=&quot;type&quot;&gt;form&lt;/field&gt;<br />&nbsp; &nbsp; &lt;field name=&quot;arch&quot; type=&quot;xml&quot;&gt;<br />&nbsp; &nbsp; &nbsp; &nbsp; &lt;field name=&quot;lastname&quot;/&gt;<br />&nbsp; &nbsp; &nbsp; &nbsp; &lt;field name=&quot;firstname&quot;/&gt;<br />&nbsp; &nbsp; &lt;/field&gt;<br />&lt;/record&gt;<br />
    




    今天 发现已经成为 一个坑,
    在学习 给 action 强行指定一个 视图的时候,发现怎么也不成功,无法替换系统原来的 视图。
    后来 不断查错过程中,发现 自己新定义的视图在系统中没有类型。

    经阅读源码发现,type 字段是 个 function 字段,type 是从  视图定义里面的 tag 解析出来的 。

    <br />	 &lt;tree string=&quot;bom2&quot;&gt;<br /><br />&nbsp; &nbsp; &nbsp; &nbsp;  &lt;/tree&gt; <br /><br /><br />	 &lt;form string=&quot;bom2&quot; version=&quot;7.0&quot;&gt;<br />&nbsp; &nbsp; &nbsp; &nbsp;  &lt;/form&gt;<br /><br />
    



    这里 的 tree  和 form 两个 tag 才是决定了 该视图的type,
    而  <field name="type">form</fiel>
    纯属摆设。

    1 条回复 最后回复
    0
    • wjfonhandW 离线
      wjfonhandW 离线
      wjfonhand
      写于 最后由 编辑
      #2

      太牛了,思考和解决问题的过程值得推荐,喜欢这样的分享!

      GoodERP -- Odoo China fork

      1 条回复 最后回复
      0
      • 1 离线
        1 离线
        18684036
        写于 最后由 编辑
        #3

        除开这个方法,我还是依然认为 def view_header_get() 这个函数可以 根据用户的uid 来指向 某个view_id
        虽然我还没做得出来,但我相信这个方法肯定行

        1 条回复 最后回复
        0

        • 登录

        • 没有帐号? 注册

        • 登录或注册以进行搜索。
        • 第一个帖子
          最后一个帖子
        0
        • 版块
        • 标签
        • 热门
        • 用户
        • 群组