【问题标题】:Issues with Odoo databaseOdoo 数据库的问题
【发布时间】:2015-08-12 06:58:07
【问题描述】:

我一直在尝试为 Odoo 创建一个新数据库,现在我已经做了几件事。

  1. 使用终端创建一个空数据库。

johan@Johan-Laptop:

$ createdb test
$ cd ~/pycharm_projects
$ mkdir test
$ cd ./test
$ git clone https://github.com/odoo/odoo.git -b 8.0
$ cd ./odoo
$ ./odoo.py -d test

(这直接来自 Odoo Development Essentials 书。)

这是我在终端中得到的:

    2015-08-12 06:31:15,752 5204 INFO ? openerp: OpenERP version 8.0
    2015-08-12 06:31:15,754 5204 INFO ? openerp: addons paths: ['/home/johan/.local/share/Odoo/addons/8.0', u'/home/johan/pycharm_projects/odoo_dev/custom_addons', u'/home/johan/pycharm_projects/odoo_dev/odoo/addons', '/home/johan/pycharm_projects/test/odoo/openerp/addons']
    2015-08-12 06:31:15,754 5204 INFO ? openerp: database hostname: localhost
    2015-08-12 06:31:15,754 5204 INFO ? openerp: database port: 5432
    2015-08-12 06:31:15,754 5204 INFO ? openerp: database user: johan
    2015-08-12 06:31:16,671 5204 INFO ? openerp.service.server: HTTP service (werkzeug) running on 0.0.0.0:8069
    2015-08-12 06:31:16,709 5204 INFO ? openerp.modules.loading: init db
    2015-08-12 06:31:20,619 5204 ERROR ? openerp.sql_db: bad query: INSERT INTO ir_module_category                     (name, parent_id)                     VALUES ('I have to look for thiscategory is the functional category of the module, which defaults toUncategoryzed. This list of existing categories can be found in the securityGroups form (settings | user | groups menu), in the Application fielddrop-down list.', NULL) RETURNING id
    Traceback (most recent call last):
      File "/home/johan/pycharm_projects/test/odoo/openerp/sql_db.py", line 234, in execute
        res = self._obj.execute(query, params)
    DataError: value too long for type character varying(128)

    2015-08-12 06:31:20,649 5204 CRITICAL ? openerp.service.server: Failed to initialize database `test`.
    Traceback (most recent call last):
      File "/home/johan/pycharm_projects/test/odoo/openerp/service/server.py", line 929, in preload_registries
        registry = RegistryManager.new(dbname, update_module=update_module)
      File "/home/johan/pycharm_projects/test/odoo/openerp/modules/registry.py", line 370, in new
        openerp.modules.load_modules(registry._db, force_demo, status, update_module)
      File "/home/johan/pycharm_projects/test/odoo/openerp/modules/loading.py", line 273, in load_modules
        openerp.modules.db.initialize(cr)
      File "/home/johan/pycharm_projects/test/odoo/openerp/modules/db.py", line 68, in initialize
        category_id = create_categories(cr, categories)
      File "/home/johan/pycharm_projects/test/odoo/openerp/modules/db.py", line 131, in create_categories
        VALUES (%s, %s) RETURNING id', (categories[0], p_id))
      File "/home/johan/pycharm_projects/test/odoo/openerp/sql_db.py", line 158, in wrapper
        return f(self, *args, **kwargs)
      File "/home/johan/pycharm_projects/test/odoo/openerp/sql_db.py", line 234, in execute
        res = self._obj.execute(query, params)
    DataError: value too long for type character varying(128)

当我使用 control+C 并再次输入命令“./odoo.py -d test”时,终端似乎一切正常,但是当我在浏览器中启动 Odoo 时,我进入了选择数据库屏幕。 当我选择“测试”数据库时,我收到错误消息“无法登录数据库测试” 在终端中,我收到错误消息:

2015-08-12 06:34:24,065 5273 INFO ? openerp: OpenERP version 8.0
2015-08-12 06:34:24,066 5273 INFO ? openerp: addons paths: ['/home/johan/.local/share/Odoo/addons/8.0', u'/home/johan/pycharm_projects/odoo_dev/custom_addons', u'/home/johan/pycharm_projects/odoo_dev/odoo/addons', '/home/johan/pycharm_projects/test/odoo/openerp/addons']
2015-08-12 06:34:24,066 5273 INFO ? openerp: database hostname: localhost
2015-08-12 06:34:24,066 5273 INFO ? openerp: database port: 5432
2015-08-12 06:34:24,066 5273 INFO ? openerp: database user: johan
2015-08-12 06:34:24,176 5273 INFO ? openerp.service.server: HTTP service (werkzeug) running on 0.0.0.0:8069
2015-08-12 06:34:24,190 5273 INFO test openerp.modules.loading: loading 1 modules...
2015-08-12 06:34:24,200 5273 INFO test openerp.modules.loading: 1 modules loaded in 0.01s, 0 queries
2015-08-12 06:34:24,383 5273 INFO test openerp.modules.loading: Modules loaded.
2015-08-12 06:34:37,198 5273 INFO test2 openerp.http: Generating nondb routing
2015-08-12 06:34:37,658 5273 INFO test2 werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:37] "GET / HTTP/1.1" 200 -
2015-08-12 06:34:37,842 5273 INFO ? openerp.addons.bus.bus: Bus.loop listen imbus on db postgres
2015-08-12 06:34:38,141 5273 INFO None werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:38] "GET /web HTTP/1.1" 303 -
2015-08-12 06:34:38,150 5273 INFO None werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:38] "GET /favicon.ico HTTP/1.1" 404 -
2015-08-12 06:34:38,390 5273 INFO None werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:38] "GET /web/database/selector HTTP/1.1" 200 -
2015-08-12 06:34:38,858 5273 INFO None werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:38] "GET /web/static/src/img/favicon.ico HTTP/1.1" 404 -
2015-08-12 06:34:40,341 5273 INFO ? openerp.addons.report.models.report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf
2015-08-12 06:34:41,468 5273 INFO ? openerp.http: HTTP Configuring static files
2015-08-12 06:34:41,493 5273 INFO None werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:41] "GET / HTTP/1.1" 200 -
2015-08-12 06:34:43,178 5273 INFO None werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:43] "GET /web?db=test HTTP/1.1" 302 -
2015-08-12 06:34:43,186 5273 INFO test openerp.addons.base.ir.ir_http: Generating routing map
2015-08-12 06:34:43,230 5273 INFO test werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:43] "GET /web?db=test HTTP/1.1" 200 -
2015-08-12 06:34:43,297 5273 INFO test werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:43] "GET /web/login?redirect=http%3A%2F%2Flocalhost%3A8069%2Fweb%3Fdb%3Dtest HTTP/1.1" 303 -
2015-08-12 06:34:43,365 5273 INFO None werkzeug: 127.0.0.1 - - [12/Aug/2015 06:34:43] "GET /web/database/selector?error=Unable%20to%20login%20on%20database%20test HTTP/1.1" 200 -
2015-08-12 06:35:24,241 5273 WARNING test openerp.addons.base.ir.ir_cron: Skipping database test as its base version is not 8.0.1.3.
2015-08-12 06:35:25,198 5273 WARNING test openerp.addons.base.ir.ir_cron: Skipping database test as its base version is not 8.0.1.3.
2015-08-12 06:36:24,303 5273 WARNING test openerp.addons.base.ir.ir_cron: Skipping database test as its base version is not 8.0.1.3.
2015-08-12 06:36:26,255 5273 WARNING test openerp.addons.base.ir.ir_cron: Skipping database test as its base version is not 8.0.1.3.
2015-08-12 06:37:24,342 5273 WARNING test openerp.addons.base.ir.ir_cron: Skipping database test as its base version is not 8.0.1.3.
2015-08-12 06:37:27,260 5273 WARNING test openerp.addons.base.ir.ir_cron: Skipping database test as its base version is not 8.0.1.3.

我已经尝试了几次,但它不起作用。即使使用从 Github 克隆的全新 Odoo 实例。

在此之后,我在网上阅读到我不应该使用终端创建数据库,而是让 Odoo 创建一个。

johan@Johan-Laptop:~/pycharm_projects/test/odoo$ cd ..
johan@Johan-Laptop:~/pycharm_projects/test$ cd .. 
johan@Johan-Laptop:~/pycharm_projects$ mkdir test2
johan@Johan-Laptop:~/pycharm_projects$ cd ./test2
johan@Johan-Laptop:~/pycharm_projects/test2$ git clone https://github.com/odoo/odoo.git -b 8.0
Cloning into 'odoo'...
remote: Counting objects: 1503424, done.
remote: Compressing objects: 100% (23/23), done.
remote: Total 1503424 (delta 7), reused 4 (delta 4), pack-reused 1503397
Receiving objects: 100% (1503424/1503424), 820.71 MiB | 10.19 MiB/s, done.
Resolving deltas: 100% (1248223/1248223), done.
Checking connectivity... done.
Checking out files: 100% (14684/14684), done.
johan@Johan-Laptop:~/pycharm_projects/test2$ cd ./odoo 
johan@Johan-Laptop:~/pycharm_projects/test2/odoo$ ./odoo.py
2015-08-12 06:46:26,734 5573 INFO ? openerp: OpenERP version 8.0
2015-08-12 06:46:26,735 5573 INFO ? openerp: addons paths: ['/home/johan/.local/share/Odoo/addons/8.0', u'/home/johan/pycharm_projects/odoo_dev/custom_addons', u'/home/johan/pycharm_projects/odoo_dev/odoo/addons', '/home/johan/pycharm_projects/test2/odoo/openerp/addons']
2015-08-12 06:46:26,735 5573 INFO ? openerp: database hostname: localhost
2015-08-12 06:46:26,735 5573 INFO ? openerp: database port: 5432
2015-08-12 06:46:26,735 5573 INFO ? openerp: database user: johan
2015-08-12 06:46:27,343 5573 INFO ? openerp.service.server: HTTP service (werkzeug) running on 0.0.0.0:8069
2015-08-12 06:46:28,533 5573 INFO v8dev openerp.modules.loading: loading 1 modules...
2015-08-12 06:46:28,559 5573 INFO v8dev openerp.modules.loading: 1 modules loaded in 0.03s, 0 queries
2015-08-12 06:46:29,900 5573 INFO v8dev openerp.modules.loading: loading 75 modules...
2015-08-12 06:46:30,029 5573 INFO v8dev passlib.registry: registered crypt handler 'pbkdf2_sha512': <class 'passlib.handlers.pbkdf2.pbkdf2_sha512'>
2015-08-12 06:46:30,030 5573 INFO v8dev passlib.registry: registered crypt handler 'md5_crypt': <class 'passlib.handlers.md5_crypt.md5_crypt'>
2015-08-12 06:46:30,140 5573 INFO ? openerp.addons.bus.bus: Bus.loop listen imbus on db postgres
2015-08-12 06:46:30,356 5573 INFO v8dev openerp.addons.report.models.report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf
2015-08-12 06:46:33,264 5573 INFO v8dev openerp.modules.loading: 75 modules loaded in 3.36s, 0 queries
2015-08-12 06:46:34,969 5573 INFO v8dev openerp.modules.loading: Modules loaded.

在此之后,终端上的一切似乎都运行良好。 我在浏览器中转到 Odoo,然后单击“管理数据库” 我保留默认密码 数据库名称:test2 我没有选中演示数据的复选框。 标准语言:英语 结束 我输入了两次密码。在这种情况下,我只使用管理员

当我创建数据库时,我在屏幕上收到以下错误消息:

Odoo Server Error
Traceback (most recent call last):
  File "/home/johan/pycharm_projects/test2/odoo/openerp/http.py", line 537, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/http.py", line 574, in dispatch
    result = self._call_function(**self.params)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/http.py", line 311, in _call_function
    return self.endpoint(*args, **kwargs)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/http.py", line 803, in __call__
    return self.method(*args, **kw)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/http.py", line 403, in response_wrap
    response = f(*args, **kw)
  File "/home/johan/pycharm_projects/odoo_dev/odoo/addons/web/controllers/main.py", line 705, in create
    request.session.authenticate(params['db_name'], 'admin', params['create_admin_pwd'])
  File "/home/johan/pycharm_projects/test2/odoo/openerp/http.py", line 966, in authenticate
    if uid: self.get_context()
  File "/home/johan/pycharm_projects/test2/odoo/openerp/http.py", line 1001, in get_context
    self.context = request.registry.get('res.users').context_get(request.cr, request.uid) or {}
  File "/home/johan/pycharm_projects/test2/odoo/openerp/api.py", line 241, in wrapper
    return old_api(self, *args, **kwargs)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/addons/base/res/res_users.py", line 420, in context_get
    return self._context_get(cr, uid)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/api.py", line 241, in wrapper
    return old_api(self, *args, **kwargs)
  File "<string>", line 2, in _context_get
  File "/home/johan/pycharm_projects/test2/odoo/openerp/tools/cache.py", line 74, in lookup
    value = d[key] = self.method(*args, **kwargs)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/addons/base/res/res_users.py", line 413, in _context_get
    res = getattr(user, k) or False
  File "/home/johan/pycharm_projects/test2/odoo/openerp/fields.py", line 817, in __get__
    self.determine_value(record)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/fields.py", line 919, in determine_value
    self.compute_value(recs)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/fields.py", line 875, in compute_value
    self._compute_value(records)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/fields.py", line 867, in _compute_value
    self.compute(records)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/fields.py", line 547, in _compute_related
    record[self.name] = other[self.related[-1]]
  File "/home/johan/pycharm_projects/test2/odoo/openerp/models.py", line 5574, in __getitem__
    return self._fields[key].__get__(self, type(self))
  File "/home/johan/pycharm_projects/test2/odoo/openerp/fields.py", line 817, in __get__
    self.determine_value(record)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/fields.py", line 910, in determine_value
    record._prefetch_field(self)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/api.py", line 239, in wrapper
    return new_api(self, *args, **kwargs)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/models.py", line 3231, in _prefetch_field
    result = records.read(list(fnames), load='_classic_write')
  File "/home/johan/pycharm_projects/test2/odoo/openerp/api.py", line 239, in wrapper
    return new_api(self, *args, **kwargs)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/models.py", line 3176, in read
    self._read_from_database(stored, inherited)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/api.py", line 239, in wrapper
    return new_api(self, *args, **kwargs)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/models.py", line 3300, in _read_from_database
    cr.execute(query_str, [tuple(sub_ids)] + where_params)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/sql_db.py", line 158, in wrapper
    return f(self, *args, **kwargs)
  File "/home/johan/pycharm_projects/test2/odoo/openerp/sql_db.py", line 234, in execute
    res = self._obj.execute(query, params)
ProgrammingError: column res_partner.lang does not exist
LINE 1:  SELECT "res_partner"."lang","res_partner"."id" FROM "res_pa...

我单击确定,然后单击按钮再次创建数据库,我收到另一个 Odoo 警告:数据库“test2”已存在。

当我在右上角按返回登录时,出现内部服务器错误。

在终端中我收到此错误消息。

   2015-08-12 06:52:34,435 5573 WARNING test openerp.addons.base.ir.ir_cron: Skipping database test as its base version is not 8.0.1.3.
2015-08-12 06:52:34,436 5573 WARNING test2 openerp.addons.base.ir.ir_cron: Skipping database test2 as its base version is not 8.0.1.3.

【问题讨论】:

    标签: python postgresql odoo-8


    【解决方案1】:

    感谢 Roel,我找到了答案。

    我所要做的就是在 Odoo 目录中使用适当的参数创建一个 openerp-server.conf 文件。接下来重新创建数据库,一切正常。

    【讨论】:

    • 我也有同样的问题。
    • 请告诉我如何添加.confi文件以及它的内容应该是什么,
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-01
    • 1970-01-01
    相关资源
    最近更新 更多