後端定義:
class Fake_del_wizard(models.TransientModel):
_name = 'fake_del_wizard'
_description = "假删除向導!"
# 想到内可以定義一些變量,供向導使用
task_ids = fields.Many2one('dub_receive_money',string='查款')
# 點選确定後要執行的函數
def btm_confirm(self):
# 從上下文中擷取記錄的id,然後查詢得到該條記錄的對象
receive_data = self.env['dub_receive_money'].search([('id', '=', self.env.context.get('active_id'))])
# 将查詢除了的對象的假删除字段設定未True
receive_data.fake_del = True
前端form視圖:
<record id="fake_del_wizard_form" model="ir.ui.view">
<field name="name">假删除向導</field>
<field name="model">fake_del_wizard</field>
<field name="arch" type="xml">
<form>
你确定要删除這個查詢嗎?
<footer>
<button name="btm_confirm" string="确認" type="object" class="oe_highlight"/>
<button special="cancel" string="取消" class="oe_link"/>
</footer>
</form>
</field>
</record>
删除動作:
<record id="action_change_stage_ttest_inv" model="ir.actions.act_window">
<field name="name">假删除動作</field>
<field name="res_model">fake_del_wizard</field>
<field name="view_mode">form</field>
<field name="target">new</field>
</record>
調用按鈕:
<button name="%(action_change_stage_ttest_inv)d" type="action" string="删除" class="btn btn-danger" attrs="{'invisible': [('payment_or_not','!=', 'st0')]}"/>