Odoo 11 在同一模型的两个不同区域添加不同的操作菜单

2023-12-27

在 Odoo 11 中,我想要两个具有两种不同功能的不同操作菜单。

在人力资源工资单中,我想添加电子邮件工资单链接,这就是为什么我使用此代码添加电子邮件工资单操作菜单

<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <data>
        <record id="action_email_payslip" model="ir.actions.server">
      <field name="name">Email Payslip</field>
            <field name="model_id" ref="hr_payroll.model_hr_payslip"/> 
            <field name="binding_model_id" ref="hr_payroll.model_hr_payslip"/>
            <field name="state">code</field> 
            <field name="code"> 
            action = records.action_email_payslip_send() 
            </field>
    </record>
    </data>
</odoo>

但这也在员工行中添加了操作菜单。在员工行中,我想要一个不同的操作菜单。那么有人可以告诉我如何实现这一目标吗?


好吧,最后一次改变,我放弃了。我希望这正是您想要的。使用我给你的答案的代码如何通过 Odoo 11 表单操作下拉列表中的按钮发送电子邮件? https://stackoverflow.com/questions/55949799/how-to-send-an-email-from-a-button-located-in-the-action-dropdown-of-an-odoo-11/56019982#56019982,只需将 Python 方法替换为以下方法即可:

@api.multi
def action_email_payslip_send(self):
    template = self.env.ref(
        'your_module_name.email_template_payslip',
        False,
    )
    compose_form = self.env.ref(
        'mail.email_compose_message_wizard_form',
        False,
    )
    ctx = dict(
        default_model='hr.payslip',
        default_use_template=bool(template),
        default_template_id=template and template.id or False,
    )
    if len(self) == 1:
        ctx.update({
            'default_composition_mode': 'comment',
            'default_res_id': self.ensure_one().id,
        })
    else:
        ctx.update({
            'default_composition_mode': 'mass_mail',
            'active_ids': self.ids,
        })
    return {
        'name': _('Compose Email'),
        'type': 'ir.actions.act_window',
        'view_type': 'form',
        'view_mode': 'form',
        'res_model': 'mail.compose.message',
        'views': [(compose_form.id, 'form')],
        'view_id': compose_form.id,
        'target': 'new',
        'context': ctx,
    }

即使您选择多个工资单,这也会打开您喜欢的电子邮件撰写消息弹出窗口(在这种情况下,预览不会替换 Mako 变量)。

我知道一开始很难,但正如 @EasyOdoo 评论的那样,你必须从答案中获取想法并进行调查,这样你就能够提出更小、更准确的问题,并轻松获得良好的答复。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Odoo 11 在同一模型的两个不同区域添加不同的操作菜单 的相关文章

  • 从数据框中按索引删除行

    我有一个数组wrong indexes train其中包含我想从数据框中删除的索引列表 0 63 151 469 1008 要删除这些索引 我正在尝试这样做 df train drop wrong indexes train 但是 代码失败
  • 如何在 AWS CDK 创建的 Python Lambda 函数中安装外部模块?

    我在 Cloud9 中使用 Python AWS CDK 并且我部署简单的 Lambda 函数那应该是发送 API 请求到 Atlassian 的 API当对象上传到 S3 存储桶时 也是由 CDK 创建的 这是我的 CDK 堆栈代码 fr
  • python future 和元组解包

    实现像使用 future 进行元组解包这样的事情的优雅 惯用的方法是什么 我有这样的代码 a b c f x y g a b z h y c 我想将其转换为使用期货 理想情况下我想写一些类似的东西 a b c ex submit f x y
  • 如何正确地将 MIDI 刻度转换为毫秒?

    我正在尝试将 MIDI 刻度 增量时间转换为毫秒 并且已经找到了一些有用的资源 MIDI Delta 时间刻度到秒 http www lastrayofhope co uk 2009 12 23 midi delta time ticks
  • pydev 调试器:严重警告:此版本的 python 似乎编译不正确(内部生成的文件名不是绝对的)[重复]

    这个问题在这里已经有答案了 通过运行 from sklearn datasets import fetch california housing import pandas as pd pd set option precision 4 m
  • 如何迭代按值排序的 Python 字典?

    我有一本字典 比如 a 6 b 1 c 2 我想迭代一下by value 不是通过键 换句话说 b 1 c 2 a 6 最直接的方法是什么 sorted dictionary items key lambda x x 1 对于那些讨厌 la
  • Pandas 中允许重复列

    我将一个大的 CSV 包含股票财务数据 文件分割成更小的块 CSV 文件的格式不同 像 Excel 数据透视表之类的东西 第一列的前几行包含一些标题 公司名称 ID 等在以下列中重复 因为一家公司有多个属性 而不是一家公司只有一栏 在前几行
  • 对图像块进行多重处理

    我有一个函数必须循环遍历图像的各个像素并计算一些几何形状 此函数需要很长时间才能运行 在 24 兆像素图像上大约需要 5 小时 但似乎应该很容易在多个内核上并行运行 然而 我一生都找不到一个有据可查 解释充分的例子来使用 Multiproc
  • 使用鼻子获取设置中当前测试的名称

    我目前正在使用鼻子编写一些功能测试 我正在测试的库操作目录结构 为了获得可重现的结果 我存储了一个测试目录结构的模板 并在执行测试之前创建该模板的副本 我在测试中执行此操作 setup功能 这确保了我在测试开始时始终具有明确定义的状态 现在
  • 如何从Python中的字符串中提取变量名称和值

    我有一根绳子 data var1 id 12345 name John White python中有没有办法将var1提取为python变量 更具体地说 我对字典变量感兴趣 这样我就可以获得变量的值 id和name python 这是由提供
  • Numpy 过滤器平滑零区域

    我有一个 0 及更大整数的 2D numpy 数组 其中值代表区域标签 例如 array 9 9 9 0 0 0 0 1 1 1 9 9 9 9 0 7 1 1 1 1 9 9 9 9 0 2 2 1 1 1 9 9 9 8 0 2 2 1
  • 如何设置 Celery 来调用自定义工作器初始化?

    我对 Celery 很陌生 我一直在尝试设置一个具有 2 个独立队列的项目 一个用于计算 另一个用于执行 到目前为止 一切都很好 我的问题是执行队列中的工作人员需要实例化一个具有唯一 object id 的类 每个工作人员一个 id 我想知
  • 奇怪的 MySQL Python mod_wsgi 无法连接到 'localhost' (49) 上的 MySQL 服务器问题

    StackOverflow上也有类似的问题 但我还没有发现完全相同的情况 这是在使用 MySQL 的 OS X Leopard 机器上 一些起始信息 MySQL Server version 5 1 30 Apache 2 2 13 Uni
  • 将 2D NumPy 数组按元素相乘并求和

    我想知道是否有一种更快的方法 专用 NumPy 函数来执行 2D NumPy 数组的元素乘法 然后对所有元素求和 我目前使用np sum np multiply A B 其中 A B 是相同维度的 NumPy 数组m x n 您可以使用np
  • 在 Pandas 中使用正则表达式的多种模式

    我是Python编程的初学者 我正在探索正则表达式 我正在尝试从 描述 列中提取一个单词 数据库名称 我无法给出多个正则表达式模式 请参阅下面的描述和代码 描述 Summary AD1 Low free DATA space in data
  • 使用 NumPy 将非均匀数据从文件读取到数组中

    假设我有一个如下所示的文本文件 33 346 1223 10 23 11 23 12 23 13 23 14 23 15 23 16 24 10 24 11 24 12 24 13 24 14 24 15 24 16 25 14 25 15
  • mac osx 10.8 上的初学者 python

    我正在学习编程 并且一直在使用 Ruby 和 ROR 但我觉得我更喜欢 Python 语言来学习编程 虽然我看到了 Ruby 和 Rails 的优点 但我觉得我需要一种更容易学习编程概念的语言 因此是 Python 但是 我似乎找不到适用于
  • 您可以将操作直接应用于map/reduce/filter 中的参数吗?

    map and filter通常可以与列表理解互换 但是reduce并不那么容易被交换map and filter 此外 在某些情况下我仍然更喜欢函数语法 但是 当您需要对参数本身进行操作时 我发现自己正在经历语法体操 最终必须编写整个函数
  • 检查字典键是否有空值

    我有以下字典 dict1 city name yass region zipcode phone address tehsil planet mars 我正在尝试创建一个基于 dict1 的新字典 但是 它不会包含带有空字符串的键 它不会包
  • Python 无法使用套接字绑定我的外部/公共 IP 地址,给出错误但是当使用本地 IP 地址时,错误不会显示

    这是出现主要错误的代码 与我的本地 IP 的绑定将起作用 s bind 192 168 1 4 port 与我的公共 IP 的绑定失败并出现以下错误 s bind 99 99 99 99 port WinError 10049 请求的地址在

随机推荐

  • 如何从密钥库导出 .key 和 .crt

    当我在开发机器上构建 Android 应用程序时 我需要为应用程序提供 SSL 证书 因此我使用 Tomcat 的 keytool 生成了一个密钥库 我从密钥库中提取了证书并将其放入 bks 中以使用 android 一切顺利 现在我们必须
  • Chrome 中高度 100%

    我的一侧有问题divChrome 中的高度不会达到 100 在FF中效果很好 我在用着 html body padding 0px width 100 height 100 div min height 100 这是为什么 这对我来说在每个
  • 确认回发 OnClientClick 按钮 ASP.NET

  • 使用 Graph FQL 获取朋友当前位置的纬度/经度

    我正在尝试使用单个 API 调用来获取用户所有朋友的纬度 经度 我相信我需要编写一个多查询 FQL 语句 但我无法获得正确的语法 我相信这两个查询需要类似于以下内容 friends SELECT uid current location F
  • 检测 Swift 应用程序是否正在从 Xcode 运行

    我想以编程方式确定 iOS 应用程序是否直接从 XCode 运行 在模拟器中或在连接设备上 我已经尝试过所述的 D DEBUG 解决方案here https stackoverflow com a 30013587 630657 但是当我断
  • ARKit节点100m后消失

    我目前正在开发 ARKit SceneKit 应用程序 我注意到如果我把一个节点放在100m 节点将显示得很好 但如果我将其设置为101m或更远 它不会显示 这是距离限制吗 var translation matrix identity f
  • OpenJDK 和 com.sun.net

    我正在考虑在 com sun net 包中使用 HttpsConfigurator HttpsServer 和 HttpContext 此外 我的项目要求的一部分是使用 OpenJDK 我在 Eclipse 中编码 它不会自动从 com s
  • 如何在 make 模式规则的依赖项中使用模式相关变量

    我想使用模式相关变量中的依赖项来定义 GNU make 模式规则 我想要的是这样的 exe EXE SOURCES EXE RESOURCES CSC V CSC CSCFLAGS EXE CSCFLAGS target exe out E
  • 计数后将行转换为列[重复]

    这个问题在这里已经有答案了 我有下表 Type1 Type2 A T1 A T2 A T1 A T1 A T2 A T3 B T3 B T2 B T3 B T3 我想要输出为 Type1 T1 T2 T3 A 3 2 1 B 0 1 3 我
  • 选择单选按钮组中的单选按钮

    我是 android 新手 我正在尝试使用无线电组的示例程序 我在单选组下声明了 2 个单选按钮 我想在其中选择哪个单选按钮 无线电组 因为想要在匿名类新的 onClickListener 的 if 和 elseif 条件中使用它 我尝试声
  • 从长 UTC 时间戳到 JAVA UTC 到 EST

    我正在尝试将 UTC 长时间戳转换为东部标准时间 但我完全迷失了 任何提示都会很棒 谢谢 右 尝试这个 Date estTime new Date utcTime getTime TimeZone getTimeZone EST getRa
  • Visual Studio 2012 专家模式

    如何进入专家模式 它不在 工具 下 我需要进入专家模式才能使用 观看 功能 None
  • Web API - 405 - 请求的资源不支持 http 方法“PUT”

    我有一个 Web API 项目 但无法对其启用 PUT Patch 请求 我从 fiddler 得到的回应是 HTTP 1 1 405 Method Not Allowed Cache Control no cache Pragma no
  • 逐像素复制两个图像

    我正在尝试处理深度图中的每个像素 我正在实现图像分割 我不知道如何处理深度大于 1 的图像中的像素 此示例代码将深度图逐像素复制到另一个 cv Mat 如果我将其标准化 标准化图像的深度 1 它就可以正常工作 但它不适用于深度 3 因为 a
  • Maui AppShell - 打开导航

    我在使用 Maui AppShell 时遇到一些概念问题 当我启动我的应用程序时 我想向我的用户展示 登录页面 如果未经过身份验证 入职页面 如果他们已通过身份验证 但尚未填写基本信息 否则 主视图 但 AppShell 看起来相当静态
  • Hibernate 和其他框架或规范之间有哪些差异/相似之处?

    我想知道 Hibernate 和 Java EE 5 中的简单持久性之间的区别 相似之处 我不清楚 Hibernate 是否实现了 Java EE 5 持久性实现 或者它是否是后端系统上数据表示的完全不同的方法 我对 Hibernate 及
  • 在android中设置Scrollview内的Viewpager高度

    我必须在滚动视图内显示一个视图寻呼机 寻呼机行中图像下方的图像和文本 我正在从网络下载图像 文本并显示在寻呼机行中 我将 viewpager 包装在 srollview 中以支持横向模式
  • 两种产品之间的差异最接近于零:非暴力解决方案?

    In a 挪威科学博物馆 https nordnorsk vitensenter no 我遇到了以下数学游戏 目标是放置从 0 到 9 的 10 位数字 使两种产品之间的差异最接近于零 246是目前最低分 回到家我写了以下暴力代码 impo
  • 在运行时调整 MTD 分区大小

    我正在使用嵌入式设备 并希望它们能够通过 Linux 调整 MTD 分区的大小 而无需重新启动 问题是我的 Linux 映像大小已增加 并且它所在的当前 MTD 分区 mtd0 现在太小了 但是 紧随其后的分区 mtd1 是用于存储配置信息
  • Odoo 11 在同一模型的两个不同区域添加不同的操作菜单

    在 Odoo 11 中 我想要两个具有两种不同功能的不同操作菜单 在人力资源工资单中 我想添加电子邮件工资单链接 这就是为什么我使用此代码添加电子邮件工资单操作菜单