Показывать всплывающее окно при сохранении записи на Odoo/Openerp

Я хотел бы показать всплывающее окно при изменении записи. Больше похоже на настраиваемый диалог проверки, в котором пользователь вводит дополнительные данные перед окончательным сохранением.

Моя проблема в том, что я не могу показать всплывающее диалоговое окно с «ir.actions.act_window».

Я пытаюсь вернуть словарь, как указано https://www.odoo.com/documentation/8.0/reference/actions.html

но это, кажется, полностью игнорируется. Это переопределенный метод записи:

def write(self, cr, uid, ids, vals, context=None):
    return_value = super(hr_holidays, self).write(cr, uid, ids, vals, context)
    print 'overriden write'
    view_id = self.pool.get('ir.ui.view').search(cr, uid, [('name', '=', 'leave_request_configuration_page')])
    return {
            "type": "ir.actions.act_window",
            "res_model": "hr.holidays",
            "views": [[view_id, "form"]],
            "target": "new",
            }

Есть ли шанс отобразить всплывающее окно при нажатии кнопки «Сохранить» в форме?


person George Daramouskas    schedule 18.04.2016    source источник
comment
Я не уверен, сможете ли вы это сделать, есть опция, которая обычно называется «Подтвердить», обычно в мастерах, но это для кнопок, которые вы добавляете. Я проверю, могу ли я что-то сделать, в любом случае, я рекомендую вам использовать новый API для перезаписи: @api.multi def write(self, values): return super(Class, self).write(values) Ура!   -  person dccdany    schedule 18.04.2016


Ответы (1)


AFAIK такой функции нет. Было бы неплохо иметь это, так как многие люди нуждаются в этом, но требует некоторой работы, особенно на стороне JS.

Обходной путь для этого — добавить текстовое поле в модель и отображать его в форме только в режиме просмотра и только в том случае, если оно имеет значение. Вы можете заполнить его через onchange, создать и/или написать.

person simahawk    schedule 18.04.2016