标签: odoo-12

错误:由于并发更新而无法序列化访问

我正在使用 PostgreSQL 数据库 (V 10) 和 odoo ERP (V 12)。

当我尝试同时使用 2 个不同的用户更新表时,我得到

ERROR: could not serialize access due to concurrent update

即使我使用多个芹菜工作人员进行并行执行,我也会收到此错误。有没有使用 odoo 在 PostgreSQL 中的同一个表中并行更新的解决方案。

谢谢!

sql postgresql odoo odoo-12

7
推荐指数
1
解决办法
9884
查看次数

suds-jurko 设置命令出错:use_2to3 无效

环境信息: python3 --version:Python 3.6.5 pip3 --version:pip 21.2.4

当我执行:“pip3 install -rrequirements.txt”时出现错误:suds-jurko 安装命令错误:use_2to3 无效

python-3.x odoo-12

7
推荐指数
1
解决办法
1万
查看次数

Odoo 12 docker compose 不显示已安装的额外插件

我正在寻找在我的 odoo 上创建额外的插件。我创建了一个插件,并在我的 docker compose 文件中设置将包含我的插件的文件夹挂载到我的 odoo docker 映像中,定义在 odoo 容器启动时也读取此文件夹。问题是,当我通过浏览器使用 odoo 时,我没有在插件列表中看到额外的插件。

我在 docker compose 中使用 odoo 12 docker 镜像

里面addons/我有我的额外插件,里面config/我有我的odoo.conf

docker-compose.yml

version: '2'
services:
  web:
    image: odoo:12.0
    depends_on:
      - db
    ports:
      - "8069:8069"
    volumes:
      - odoo-web-data:/var/lib/odoo
      - ./config:/etc/odoo
      - ./addons:/mnt/extra-addons
  db:
    image: postgres:10
    environment:
      - POSTGRES_DB=postgres
      - POSTGRES_PASSWORD=odoo
      - POSTGRES_USER=odoo
      - PGDATA=/var/lib/postgresql/data/pgdata
    volumes:
      - odoo-db-data:/var/lib/postgresql/data/pgdata
volumes:
  odoo-web-data:
  odoo-db-data:
Run Code Online (Sandbox Code Playgroud)

odoo.conf

[options]
addons_path = /mnt/extra-addons
data_dir = /var/lib/odoo
Run Code Online (Sandbox Code Playgroud)

如果我显示我看到的内容addons

$ ls addons/
custom-addon …
Run Code Online (Sandbox Code Playgroud)

docker odoo docker-compose odoo-12

6
推荐指数
1
解决办法
1978
查看次数

在常见的 Odoo 方法“execute_kw”中,后缀“kw”指的是什么?

我一生都找不到任何地方解释常见 Odoo 方法名称的后缀execute_kw。后缀是做什么kw用的?它只是两个任意字母吗?

odoo odoo-10 odoo-11 odoo-12

5
推荐指数
1
解决办法
1280
查看次数

如何在不立即影响数据库的情况下删除记录

在一个先例问题中,我正在寻找与 ORM 中BaseModel.newcreate方法类似的方法,但不会在数据库中写入更改。

是否存在相同的方法,但行为像unlink?我想在onchange通话中从我的记录集中删除一条记录。我不希望立即删除记录,但仅当用户按下Save按钮时才删除。

非常感谢您提前!


有关我为什么需要此功能的更多信息:

我正在使用stockOdoo的模块。在 a 中Picking,我想动态更改保留产品(按唯一序列号跟踪),这意味着添加一些新产品move_line并删除一些现有产品。

我不能简单地更改,lot_id因为某些move_lineslot_id可能会保留在另一个中Picking(或者至少,我没有找到如何巧妙地做到这一点)。

通过更改lot_id或执行selected_move_id.move_line_ids.new({...})我的onchange方法,我可以添加新的。现在我想删除我不再需要的现有的。我想以与用户按下trash相应行上的图标相同的方式删除它们。

odoo odoo-12

5
推荐指数
1
解决办法
661
查看次数

如何使用额外的 pip 包正确扩展基本 odoo docker 镜像?

我需要扩展基本的 odoo 图像,安装一些 python 包。我有一个与 odoo docker 镜像相关的问题。

我尝试编写自己的 Dockerfile 来继承odoo:latest并安装我的 pip 包,但它对我不起作用。问题是在构建阶段一切似乎都工作得很好,但我在输出中看不到我的模块pip list

这是我的 Dockerfile

FROM odoo:latest

RUN pip3 install remote-pdb
Run Code Online (Sandbox Code Playgroud)

我已经用该命令构建了我的图像

docker build -f Dockerfile-odoo -t odoo-extended .

并有下一个输出

Sending build context to Docker daemon  2.993GB
Step 1/2 : FROM odoo:latest
 ---> 027465548874
Step 2/2 : RUN pip3 install remote-pdb
 ---> Running in ce7e075dacf4
Collecting remote-pdb
  Downloading https://files.pythonhosted.org/packages/72/4d/976e45067b791c0012ee060ba615a95122ba4152dce2cf5d4f57847eef84/remote_pdb-2.0.0-py2.py3-none-any.whl
Installing collected packages: remote-pdb
Successfully installed remote-pdb-2.0.0
Removing intermediate container ce7e075dacf4
 ---> 9e315e30ccbb
Successfully built 9e315e30ccbb …
Run Code Online (Sandbox Code Playgroud)

python docker odoo odoo-12

5
推荐指数
1
解决办法
1993
查看次数

Odoo E8103:SQL 注入风险。如果可以的话使用参数

我正在使用 odoo pylint 并遇到此消息“Odoo E8103:SQL 注入风险”。如果可以的话使用参数'。它指的是以下示例 SQL 查询行模式:

 self.env.cr.execute("""SELECT sq_qty , prod_id ...
        FROM st
        LEFT JOIN prod
        ON prod.id = st.prod_id
        WHERE %s
        GROUP BY prod_id, loc_id, ..."""% domain, args)
Run Code Online (Sandbox Code Playgroud)

根据OCA No SQL Injection,最好的安全方法是永远不要使用 Python 字符串连接 (+) 或字符串参数插值 (%) 将变量传递给 SQL 查询字符串。

我尝试将 '%' 替换为 ',' 并用 () 括起域和参数: GROUP BY prod_id, loc_id, ...""", (domain, args)),它通过了检查,但不确定这是否是正确的方法。

放置跳过检查是更好还是按照 pylint 建议的内容进行修改,如果修改更好,处理它的正确方法是什么?

编辑:我将sql查询语句分离为变量

query = """SELECT sq_qty , prod_id ...
        FROM st
        LEFT JOIN prod
        ON prod.id = st.prod_id
        WHERE …
Run Code Online (Sandbox Code Playgroud)

python sql odoo odoo-12

5
推荐指数
1
解决办法
1187
查看次数

Odoo安装错误:psycopg2.errors.UndefinedTable:关系“ir_module_module”不存在

我想在“Windows Server 2019”上使用“Python 3.9”和“postgresql 13”安装 Odoo 版本 12,但是当我想创建数据库时,会显示此错误:

Database creation error: relation "ir_model" does not exist LINE 1: SELECT * FROM ir_model WHERE state='manual' ^
Run Code Online (Sandbox Code Playgroud)

我用这个命令来运行 Odoo:

python odoo-bin -r user -w pass -d odoo -i base --db-filter=^%d$
Run Code Online (Sandbox Code Playgroud)

当我检查 pgAdmin Odoo 已创建数据库但其中没有存储表。

python odoo odoo-12

5
推荐指数
0
解决办法
5300
查看次数

wkhtmltopdf失败(错误代码:-8).消息:b"odoo 12

当我想打印任何报告时,我收到此消息:wkhtmltopdf失败(错误代码:-8).消息:b"

此问题仅适用于Odoo 12版本,但对于以前的版本,它运行良好..此链接将显示警告消息:Wkhtmltopdf警告

这是日志:

Traceback (most recent call last):
  File "/home/nebil/.environments/Odoo12/lib/python3.6/site-packages/werkzeug/serving.py", line 205, in run_wsgi
    execute(self.server.app)
  File "/home/nebil/.environments/Odoo12/lib/python3.6/site-packages/werkzeug/serving.py", line 193, in execute
    application_iter = app(environ, start_response)
  File "/home/nebil/Documents/odoo/odoo/service/server.py", line 350, in app
    return self.app(e, s)
  File "/home/nebil/Documents/odoo/odoo/service/wsgi_server.py", line 128, in application
    return application_unproxied(environ, start_response)
  File "/home/nebil/Documents/odoo/odoo/service/wsgi_server.py", line 117, in application_unproxied
    result = odoo.http.root(environ, start_response)
  File "/home/nebil/Documents/odoo/odoo/http.py", line 1317, in __call__
    return self.dispatch(environ, start_response)
  File "/home/nebil/Documents/odoo/odoo/http.py", line 1290, in __call__
    return self.app(environ, start_wrapped)
  File "/home/nebil/.environments/Odoo12/lib/python3.6/site-packages/werkzeug/wsgi.py", line 599, in __call__ …
Run Code Online (Sandbox Code Playgroud)

report wkhtmltopdf odoo-12

4
推荐指数
1
解决办法
1216
查看次数

无法将 postgresql 与 odoo 连接

我在 aws ec2 中配置了 odoo 并在我运行命令./odoo-bin --config=/etc/odoo.conf并尝试从浏览器访问时从 rds 连接 Postgresql ,我收到以下错误:

ERROR odoo_db odoo.modules.loading: Database odoo_db not initialized, you can force it with `-i base` 

File "/opt/odoo/odoo/odoo/modules/registry.py", line 176, in __getitem__
    return self.models[model_name]
KeyError: 'ir.http' - - -
Run Code Online (Sandbox Code Playgroud)

而且我也收到此错误:

STATEMENT:  SELECT latest_version FROM ir_module_module WHERE name='base'
ERROR odoo_db odoo.sql_db: bad query: SELECT latest_version FROM ir_module_module WHERE name='base'
ERROR: relation "ir_module_module" does not exist
Run Code Online (Sandbox Code Playgroud)

python-3.x odoo odoo-12

4
推荐指数
2
解决办法
9675
查看次数