odoo - 瞬态模型odoo中的active_id和动作
问题描述
我正在尝试从(hr.payslip)模型中获取一些值。在此之前,我需要在操作(下拉列表)中添加一个选项,您可以在其中删除或导出选定的工资单。因此,当我从 treeView(下图中的复选框)中选择工资单时,该新选项应该会显示一个向导,其中显示具有所选工资单的 One2many 表,以便我可以打印或执行其他操作。
这就是场景,我没有开始任何编码来做到这一点。
我是odoo的新手。我希望你能帮我举一些例子。
解决方案
你必须创建新动作和新对象也创建新对象
class NewObject(models.TransientModel):
_name = 'new.object'
_description = 'Description of new object'
@api.multi
def generate_report(self):
payslip_ids = self._.get('active_ids',[])
#payslip_ids this will be your selected payslip ids in list view.
<act_window
name="Your Action string"
res_model="new.object"
src_model="hr.payslip"
view_mode="form"
view_type="form"
target="new"
multi="True"
key2="client_action_multi"
id="id_of_act_window"
view_id="view of new object"
/>
然后为新对象创建视图
<record id="id of new view" model="ir.ui.view">
<field name="name">Name of view</field>
<field name="model">model of new view</field>
<field name="arch" type="xml">
<form string="">
<button name="generate_report" string="Generate Report
type="object" class="oe_highlight" />
</form>
</field>
</record>
在这里你可以添加你想要的代码。
推荐阅读
- android - 无法解析方法 getmap() 扩展 SupportMapFragment
- html - 标签选择 - 选择的选项
- indexing - 如何在 AppCode 中设置索引位置?
- flutter - CupertinoAlertDialog 与 TextFIeld
- import - 将数据导入 MariaDB 10.3 的性能问题
- floating-point - D3DXVECTOR3 类中的等式运算符
- jwt - 验证 keycloak 令牌的最低要求是什么?
- android - 我可以像 Waze 和 Google Map 那样将我的地图应用程序添加到“Android Auto”吗?
- android - ListAdapter with DiffUtil.ItemCallback always considers objects the same
- ubuntu - 如何解决 Ubuntu 32 位中“gcc”链接时出现的错误?