ODOO中的Action原理?

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: ODOO 中的 Action原理?

原理:什么是Action?

首先,

     让我们来看看,大家知道的客户端給服务端传参数的方式只有很少的几种:

     1. URL网址后跟参数;

     2. Post请求传参;

     3. Header中传参(例如Cookie);
     ODOO架构在设计的时候,选择了最简单、可见的传参方式,即直接在 URL 中进行参数传递。

     当我们访问一个URL时,我们直接在 URL后面,跟上ODOO所能识别的参数,例如:Action、Model、View_Type、Menu_id。然后,ODOO系统会自动根据您所访问的URL进行解析,根据参数进行渲染,最后返回相应的视图。

image

image

image

Actions

Actions 可存在数据库中。也可以直接以字典(dictionaries)形式返回(比如按钮所运行的函数,利于前端JavaScript知道下一步要干什么)。

所有的actions有两个必须的属性:

type 类别,该属性决定了哪些字段会被用来解析此action.

name 描述,可显示在客户端界面上.

客户端会接收到4种形式的action

False

若当前action对话界面是打开状态,则关闭.

一条字符串

若与某客户端动作的tag匹配,则解析该action,否则按数字处理.

一个数字

作为id从数据库中获取action记录,该id可能为数据记录id或外部id.

一个字典

将其作为客户端action描述,解析并执行.

在JavaScript中:

var AbstractAction = require('web.AbstractAction');

var ClientAction = AbstractAction.extend({

       ...

  });

core.action_registry.add('my-custom-action', ClientAction);

在xml中:

         <field name="name">名称</field>

         <field name="tag">my-custom-action</field>

          id="my_menu_item"

          parent="some_parent"

          action="my-custom-action"

          name="Title" />
目录
相关文章
|
网络架构 Python
【Django学习】(十四)自定义action_router
【Django学习】(十四)自定义action_router
|
Python
odoo 开发入门教程系列-准备一些操作(Action)?
odoo 开发入门教程系列-准备一些操作(Action)?
211 0
|
存储 数据可视化 数据库
odoo Actions学习总结
odoo Actions学习总结
135 0
|
XML 安全 Java
action 的三种实现方式 | 学习笔记
快速学习 action 的三种实现方式,介绍了 action 的三种实现方式系统机制, 以及在实际应用过程中如何使用。
odoo 中的 xpath 语法(简概 一)
大家好, 很多朋友在odoo 开发的时候,都遇到需要使用 xpath 修改继承视图的情况。我们这里就简单总结一下xpath 是什么:[数据结构] 首先:, 我们希望告诉电脑,我们的组织是这样一个架构,通过xml实现: 如何写代码呢?
4470 0
|
Java API 数据安全/隐私保护
Struts2【开发Action】知识要点
前言 前面Struts博文基本把Struts的配置信息讲解完了.....本博文主要讲解Struts对数据的处理 Action开发的三种方式 在第一次我们写开发步骤的时候,我们写的Action是继承着ActionSupport类的.
1217 0
下一篇
DataWorks