odoo之表单视图

概念

表单视图用于显示来自单个记录的数据。它们的根元素是<form>。它们由带有附加结构和语义组件的常规超文本标记语言组成

Structural components

结构组件提供几乎没有逻辑的结构或“视觉”功能。它们用作表单视图中的元素或元素集

  • notebook
    定义一个选项卡式部分。每个选项卡都是通过页面子元素定义的。页面可以具有以下属性

    • string (required)
      标签的标题
    • accesskey
      一种超文本标记语言附件
    • attrs
      基于记录值的标准动态属性

    请注意,笔记本不应放在组内

  • group
    用于定义窗体中的列布局。默认情况下,组定义2列,组的大多数直接子项使用单个列。默认情况下,组的字段直接子项显示一个标签,标签和字段本身的跨度各为1。

    组中的列数可以使用colspan属性自定义,元素所占的列数可以使用colspan自定义。

    子级水平布局(尝试在更改行之前填充下一列)。

    组可以有一个字符串属性,它显示为组的标题

  • newline
    仅在组元素中有用,提前结束当前行并立即切换到新行(无需事先填充任何剩余列)

  • separator
    小的水平行间距,具有字符串属性作为节标题

  • sheet
    可以用作表单的直接子表单,以实现更窄、响应更快的表单布局

  • header
    结合工作表,在工作表本身上方提供一个全宽位置,通常用于显示工作流按钮和状态小部件

Semantic components

语义组件绑定到Odoo系统并允许与之交互,可用的语义组件是

  • button
    调用Odoo系统,类似于列表视图按钮,此外,可以指定以下属性

    • special
      对于在对话框中打开的表单视图:保存以保存记录并关闭对话框,取消以关闭对话框而不保存
    • confirm
      在执行按钮的Odoo调用之前显示(并供用户接受)的确认消息(也适用于看板视图)
  • field
    呈现(并可能允许编辑)当前记录的单个字段。支持在表单视图中多次使用字段,并且字段可以接收修饰符“不可见”和“只读”的不同值。但是,当存在多个字段具有修饰符“必需”的不同值时,不能保证这种行为。字段节点的可能属性是

    • name (强制的)
      要呈现的字段的名称

    • id
      节点ID。当视图中多次出现相同字段时很有用(参见下面的标签组件)。默认为字段名

    • widget
      字段具有基于其类型的默认呈现(例如Char、Many2one)。小部件属性允许使用不同的呈现方法和上下文

    • options
      JSON对象指定字段小部件的配置选项(包括默认小部件)

    • class
      在生成的元素上设置超文本标记语言类,常用字段类是

      • oe_inline
        防止字段后面通常的换行符

      • oe_left, oe_right
        将字段浮动到相应的方向

      • oe_read_only, oe_edit_only
        仅在相应的表单模式下显示字段

      • oe_avatar
        对于图像字段,将图像显示为“头像”(方形,90x90最大尺寸,一些图像装饰)

    • groups
      仅显示特定用户的字段

    • on_change
      在编辑此字段的值时调用指定的方法,可以为用户生成更新其他字段或显示警告
      8.0 版后已移除: Use odoo.api.onchange() on the model

    • attrs
      基于记录值的动态元参数

    • domain
      仅对于关系字段,在显示可供选择的现有记录时应用筛选器

    • context
      仅对于关系字段,获取可能值时要传递的上下文

    • readonly
      以只读和编辑模式显示字段,但绝不使其可编辑

    • required
      如果字段没有值,则生成错误并阻止保存记录

    • nolabel
      不要自动显示字段的标签,只有当字段是组元素的直接子元素时才有意义

    • placeholder
      帮助消息显示在空字段中。可以替换复杂表单中的字段标签。不应该是数据示例,因为用户容易将占位符文本与填充字段混淆

    • mode
      对于One2many,用于字段链接记录的显示模式(视图类型)。tree, form, kanban or graph之一。默认为tree(列表显示)

    • help
      当用户悬停字段或其标签时显示的工具提示

    • filename
      对于二进制字段,提供文件名称的相关字段的名称

    • password
      指示Char字段存储密码并且不应显示其数据

    • kanban_view_ref
      用于在移动环境中从m2o/m2m中选择记录时打开特定的看板视图

  • label
    当字段组件没有直接放置在组中,或者设置了它的nolabel属性时,字段的标签不会自动与其值一起显示。标签组件是手动显示字段标签的替代方法。可能的属性有

    • for (mandatory)
      对与标签关联的字段的引用。可以是字段的名称,也可以是字段的id(字段上设置的id属性)。当视图中多次出现同一个字段,并且有几个标签组件与这些字段节点相关联时,这些标签的属性必须是唯一的(在本例中引用对应字段节点的id属性)。

    • string
      要显示的标签。默认显示字段的标签(来自模型中的字段定义)。

    • class
      与现场组件相同。

    • attrs
      与字段组件相同。

Generic structure
<form>
  <header>
    <field name="state" widget="statusbar"/>
  </header>
  <sheet>
    <div class="oe_button_box">
      <BUTTONS/>
    </div>
    <group>
      <group>
        <field name="fname"/>
      </group>
    </group>
    <notebook>
      <page string="Page1">
        <group>
          <CONTENT/>
        </group>
      </page>
      <page string="Page2">
        <group>
          <CONTENT/>
        </group>
      </page>
    </notebook>
  </sheet>
</form>

根据odoo15的相关文档翻译而来

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值