Всплывающее окно на сайте odoo 8
Мне нужно открыть всплывающее окно, когда я нажимаю на ссылку "Нажмите здесь, чтобы изменить".
Я пробовал ниже код
@http.route(['/ftp_server/web/edit_dir/'], type='http', auth="public", website=True)
def edit_dir(self, **kwargs):
cr, uid, context, pool = request.cr, request.uid, request.context, request.registry
print'ftp_server_kwargs', kwargs
values = {}
return request.website.render("website.contentMenu.dialog.edit", values)
Но получаю ошибку:
ValueError: External ID not found in the system: website.contentMenu.dialog.edit
1 ответ
Вам нужно, чтобы у вашего всплывающего окна был шаблон с идентификатором "edit", и это будет работать только в том случае, если это всплывающее окно является частью модуля website.contentMenu.dialog.
Форма является:
request.website.render("modulename.templateid", {
'data_sent_to_template': data_generated_in_controller
}
<template id="templateid">
//pop up html
</template>
http://www.odoo.com/documentation/9.0/howtos/website.html
Как правило, в этом случае я бы предпочел создать всплывающее окно в формате html на странице, использовать jquery для отображения и скрытия и Ajax для отправки его на контроллер и получения данных из него без рендеринга данных с помощью python.