【问题标题】:Why the database manager of my Odoo 11 instance has been disabled?为什么我的 Odoo 11 实例的数据库管理器已被禁用?
【发布时间】:2019-10-18 16:17:00
【问题描述】:

我收到了一个压缩的 Odoo 实例作为 ZIP 文件。我的目的是解压缩它并让它在我的电脑上工作。我能够毫无问题地做到这一点。

现在,我必须使该实例在另一台服务器上工作,因此我已将该实例从我的计算机移动到上述服务器。

两种安装之间的唯一区别(显然)是在新服务器中我使用virtualenv 来安装所有 Python3 包并运行 Odoo。在这个新服务器中,当我启动 Odoo 时,我会看到以下消息:

数据库管理器已被管理员禁用

而且我没有机会从界面创建一个新的数据库。

在我的计算机中,同一个 Odoo 实例显示数据库管理器创建一个新数据库,一如既往。

有什么想法吗?可能是virtualenv 的问题吗?

【问题讨论】:

    标签: python python-3.x odoo odoo-11


    【解决方案1】:

    当我在 Using IDE 中搜索这句话时,我在这个文件中找到了它\web\views\database_manager.html 有一个条件显示这句话是:

      {% if not list_db %}
      <div class="alert alert-danger text-center">
      The database manager has been disabled by the administrator
      </div>
    

    当这个list_db 变量有假值时显示。现在这个变量通过这个方法传递给这个模板(html page)

     def _render_template(self, **d):
        d.setdefault('manage',True)
        d['insecure'] = odoo.tools.config.verify_admin_password('admin')
        d['list_db'] = odoo.tools.config['list_db']
        .....
        .....
        return env.get_template("database_manager.html").render(d)
    

    这表示这个值是从配置文件中获取的,所以请确保在配置文件中这个值设置为True

       [options]
       addons_path = .....
       admin_passwd =  ....
       ....
       ....
       list_db = True
    

    在知道之前不知道这个选项,非常好的问题一如既往@forvas。

    【讨论】:

    • 终于virtualenv没有问题了。在我的计算机实例中,在其配置文件中,我忘记更改 addons_path 并且它指向我通常使用的实例的插件。在新服务器中,addons_path 是正确的,指向我必须迁移的实例的插件。问题是那些插件充满了垃圾代码。旧的 Odoo 供应商修改了核心,强制工作流始终显示“数据库管理器已被管理员禁用”,无论 list_db 的值如何。尽管如此,还是感谢您提供有用的信息!
    • 这意味着配置值没有正确加载?因为addons_path的价值?
    • 配置值加载正常,但模块 web(以及其他)的代码已被旧的 Odoo 提供程序更改,将 {% if not list_db %} 等条件替换为 {% if True %} 以始终显示消息.在我的电脑上我也有同样的实例,但我没有收到消息,因为当我填写 addons_path 时,我犯了一个错误并指向了另一个模块 web(一个没问题)。
    • list_db = True -> 谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多