【问题标题】:configure Pycharm to debug Odoo 8配置 Pycharm 调试 Odoo 8
【发布时间】:2016-08-10 12:17:44
【问题描述】:

我已经安装了 pycharm 社区版 2016。

我尝试将其配置为调试 Odoo,如捕获中所示

当我打开一个 python 文件设置断点并单击调试图标时,我遇到了一个异常:

还有openerp、fields、api用红色下划线。

请有任何建议。我使用 windows 8.1 作为操作系统

更新

根据 Mariusz 的回答,我现在可以在没有任何错误的情况下单击调试按钮。

现在我在代码上放置了一个断点来跟踪执行,但是在执行该方法时从未到达断点(代码位于按钮方法内)。我可以在 odoo 页面中看到结果。

【问题讨论】:

    标签: python openerp pycharm odoo-8


    【解决方案1】:

    第一个问题 - 你不应该从 exe 文件运行它,而是从 openerp-server 运行,它通过 python 解释器位于 odoo 安装文件夹中。更何况你的配置是错误的,因为 Odoo 不支持 Python 3.4.1 我的配置如下所示: 第二个问题 - 您需要在项目结构配置中添加源文件夹,以便 PyCharm 将其识别为从中导入的文件夹。

    【讨论】:

    • 您的意思是 Odoo 不适用于 Python 3.4.1? ;-)
    • 嗨@Mizgier,我在Odoo 安装中没有Openerp-server,而是使用服务器。在脚本中我添加了 C:\Program Files (x86)\Odoo 8.0-20150408\server 。我也已经在项目结构中有源文件夹。现在我点击调试我得到了权限被拒绝。 Pycharm 以管理员身份运行
    • @CZoellner 是的,我的意思是它不适用于 3.4.1 OumarDiarra 您必须从 github.com/odoo/odoo 下载源代码才能通过 PyCharm 运行 Odoo,而不是使用一体化软件包工作。
    • 谢谢@MariuszMizgier。现在我没有任何错误。但似乎我无法达到断点。我已经更新了我的问题。再次感谢
    【解决方案2】:

    为了能够到达断点,您必须禁用 gevent。在撰写本文时,您可以通过在openerp/__init__.py 中评论这段代码来做到这一点

    import sys
    evented = False
    #if sys.modules.get("gevent") is not None:
    #    evented = True
    

    【讨论】:

    • 已禁用但仍无法到达。
    • @OumarDiarra 听起来很奇怪...您能确认您尝试调试的代码是可访问的吗? (例如,在您创建断点的地方之后创建日志)。
    • 是的,它可以到达。我在断点后添加了一个打印,我可以在 Windows 提示命令中看到它。
    猜你喜欢
    • 1970-01-01
    • 2019-01-21
    • 1970-01-01
    • 1970-01-01
    • 2014-02-15
    • 2020-12-28
    • 1970-01-01
    • 2016-10-04
    • 2018-01-15
    相关资源
    最近更新 更多