如何在Odoo浏览器中进行调试

6

如何在像Chrome和Firefox这样的浏览器中特别调试"Odoo"?

是否有人可以提供相关信息,将会非常有帮助。

提前感谢您的帮助。


为此,您只需启动开发者模式,然后从中选择调试模式即可在Odoo上进行调试。 - Dheeraj Balodia
6个回答

4
您的问题对我来说不是很清楚,但如果您想进入内置的odoo调试模式,您需要在URL后面添加?debug,紧跟着/web。例如:http://odoo.your-site.com/web?debug
当处于这个特殊模式时,您会得到一个调试菜单,其中包含各种技术选项:

debugging menu in odoo

此外,当您处于调试模式下时,odoo不会压缩JS文件,使您更容易使用内置的浏览器JavaScript调试工具。

Tranmmer,感谢您宝贵的回复,但我想要详细了解RPC调用请求和响应的内容,以及如何逐步进行调试,查看特定字段值的方法。 - user1576199
FYI,在较新版本的Odoo上,启用with assets的调试不会缩小JS/CSS文件,但是关闭assets的调试仍然会缩小它们。 - Vinh VO

2

您可以在浏览器中打开控制台(使用F12键)。它将显示每个请求和响应的值。

如果您正在使用Chrome,则需要在控制台中激活logXMLHTTPREQUEST。要激活每个请求和响应,您可以右键单击控制台,然后单击logXMLHTTPREQUEST选项。


你能为我详细解释一下在浏览器中逐步调试的步骤吗? - user1576199
打开Google Chrome的工具菜单,然后点击“开发者工具”菜单。它会在浏览器底部打开一个小窗口,或者按SHIFT + CTRL + I键打开调试模式视图。右键单击调试窗口,它会打开一个带有几个选项的小窗口,因此您可以激活或单击logXMLHTTPREQUEST选项。激活logXMLHTTPREUEST选项后,每当您在ODOO上执行任何操作时,它都会在调试器窗口的控制台选项卡中显示所有http请求。 - Yogesh Sakhreliya

1
打开控制台(CTRL+SHIFT+I),然后获取代理对象以访问您想要访问的服务器模型(在此示例中为“Leads”):
var Leads = new openerp.Model('crm.lead');

在openerp v7.0中,您可以通过以下方式获取代理:
var instance = openerp.instances.instance0
var Leads = new instance.web.Model('crm.lead')

在此之后,进行查询、筛选结果并指定想要对对象列表执行的操作(在本例中是计数):
Leads.query(['id']).all().then(function(leads){console.log(leads.length)})

在这种情况下,显示第一个的Id:
Leads.query(['id']).first().then(function(lead){console.log(lead.id)})

更多Odoo的示例和文档:

https://www.odoo.com/documentation/8.0/reference/javascript.html#rpc

更多的OpenERP样例和文档:

http://openerp-web-v7.readthedocs.org/en/latest/testing.html#rpc


1
这是我在Linux中的操作方式:

停止作为守护进程运行的服务器 /etc/init.d/openerp stop

将Python调试器放置在您想要调试和逐步执行的Odoo .py文件中。

import pdb; pdb.set_trace()

以openerp用户身份从命令行启动您的服务器

./server/openerp-server --database=DB_NAME

通过浏览器访问程序,当它到达您的Python调试器时会中断


0

ODOO debugging menu

您需要激活“资产调试”功能,以使QWEB(资产)的JavaScript可调试。首先需要启用odoo的调试模式才能看到调试按钮。


0

您可以在Chrome中使用以下扩展程序来调试Odoo。

https://chrome.google.com/webstore/detail/odoo-debug/hmdmhilocobgohohpdpolmibjklfgkbi?hl=en

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接