Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将Odoo 8与Odoo 9一起运行?_Python_Openerp_Odoo 8_Odoo 9 - Fatal编程技术网

Python 如何将Odoo 8与Odoo 9一起运行?

Python 如何将Odoo 8与Odoo 9一起运行?,python,openerp,odoo-8,odoo-9,Python,Openerp,Odoo 8,Odoo 9,我已经安装了Odoo8.0和9.0。我的Odoo 8.0在端口8069上运行良好,但当我安装了Odoo 9.0并在端口8070上运行时,Odoo 8.0现在抛出500个服务器错误 我试图从一开始就重新安装Odoo 8.0,但这次使用virtualenv,这样它就不会与Odoo 9.0的依赖项冲突,而是使用以下方式运行它: (Odoo8venv)user@domain:~/Odoo8venv/bin/python ~/odoo-8.0/odoo.py -c ~/odoo-dev/custom.co

我已经安装了Odoo8.0和9.0。我的Odoo 8.0在端口8069上运行良好,但当我安装了Odoo 9.0并在端口8070上运行时,Odoo 8.0现在抛出500个服务器错误

我试图从一开始就重新安装Odoo 8.0,但这次使用virtualenv,这样它就不会与Odoo 9.0的依赖项冲突,而是使用以下方式运行它:

(Odoo8venv)user@domain:~/Odoo8venv/bin/python ~/odoo-8.0/odoo.py -c ~/odoo-dev/custom.conf
仍然抛出错误:

2015-11-20 01:32:50,660 6772 ERROR test openerp.modules.graph: module website_partner: Unmet dependencies: website
2015-11-20 01:32:50,660 6772 ERROR test openerp.modules.graph: module portal: Unmet dependencies: share, auth_signup
2015-11-20 01:32:50,660 6772 WARNING test openerp.modules.graph: Some modules were not loaded.

我认为这是因为Odoo8.0看到了使用Odoo9.0创建的数据库。我是否应该为Odoo 8.0在其他端口上创建新的postgresql server?或者如何使这两个文件都运行?

请检查您的
custom.conf
文件中的错误路径。看起来您仍然有odoo8插件目录,而不是odoo9(至少是openerp/目录)

是的,还有数据库的问题。Odoo9使用了一个稍微不同的模式,所以您需要创建一个新的集群。Ubuntu有关于这方面的文档:


创建集群后,
sudo服务postgresql重新启动
,并使用不同的
python odoo.py--config filec=odoo9.config
文件和不同的
db\u端口
(使用
pg\u createcluster时指定的)。请注意,您还需要为该新集群中使用的odoo创建用户。

您应该运行两个实例,一个用于odoo8,一个用于odoo9。要实现这一点,您应该为不同的实例创建两个pg用户。否则,对于试图读取odoo9数据库的odoo8实例,或者试图读取odoo8数据库的odoo9实例,您应该会得到500个内部错误。

简单的解决方案是只需创建新用户来安装新的Odoo版本 就像在同一个系统中使用odoo一样。
再创建一个用户并在odoo it上安装。

您可以同时运行这两个用户,只需正确设置加载项路径、xmlrpc端口和db筛选器即可

在终端中(如果在基于unix的平台上),可以创建自定义命令行,如:

/home/odoo8/odoo8.py --xmlrpc-port 1337 --addons-path='/home/odoo8/addons' --db-filter=^odoo_8$
/home/odoo7/odoo7.py --xmlrpc-port 1337 --addons-path='/home/odoo7/addons' --db-filter=^odoo_7$

像这样设置配置文件odoo.conf

[options]

; This is the password that allows database operations:

; admin_passwd = admin

db_host = localhost

db_port = 5432

db_user = odoo_user11

db_password = admin

xmlrpc_port = 8011

更改db_user,db_password和您的

只需更改RPC端口并打开两个终端,一个用于odoo 8,另一个用于odoo 9

我个人使用了多个postgres用户选项

您有多种选择:

多个postgres用户

创建两个postgres用户(“odoo_8”和“odoo_9”)

在odoo 8的配置中,您将与odoo_8 postgres用户连接,在odoo 9上与odoo_9 postgres用户连接

这样,您就不必处理db_过滤器,因为它们是由用户分隔的

Db过滤器

使用自己的前缀为您的odoo 8数据库添加前缀,并对odoo 9数据库执行相同的操作

然后在配置文件中为前缀设置db过滤器。
dbfilter=*

您需要使用两个不同的用户和两个不同的db用户

查看下面的链接,了解如何操作的说明

希望这有帮助


祝你好运

只需使用注释更改端口--xmlrpc port=(4位端口)

1) 假设我们像/odoo-bin--xmlrpc-port='1111'一样运行odoo 8。我们可以从frend end以localhost:1111的身份访问odoo8服务器


2) Odoo9应该像/odoo bin一样正常运行。我们可以作为localhost:8069从末尾访问odoo9服务器

检查配置文件中的加载项和临时数据目录。windows文件中的临时文件位置相同,因此您可能会遇到一些错误。另外,我建议对不同的版本使用不同的数据库用户。

简单的方法是:

  • 创建两个用户系统“odoo8”和“odoo9”
  • 在/opt上,必须创建两个文件夹“/opt/odoo8”和“/opt/odoo9”。最好让它们成为每个用户的家
  • 创建两个用户postgresql“odoo8”和“odoo9”
  • 这些文件夹必须包含eatch版本的所有加载项
  • 然后在/opt/etc处创建两个文件,分别命名为odoo8.conf和odoo9.conf,其中包含不同的端口和数据库用户(例如8008和8009)
  • 您可以在/etc/init.d创建两个服务
您可以访问我的脚本来执行此操作,只需更改OE_用户变量并启动它


祝您好运

您可以使用docker two为odoo8和odoo9创建两个单独的容器。您可以使用docker run命令创建docker容器


docker run-提示您的\u端口:docker\u端口-v您的\u文件夹:docker\u文件夹-命名您的\u容器\u名称图像\u名称

您可以使用--db filter=您的数据库名称来运行服务器,然后重试this@macdelacruz您是否可以与custom.conf设置共享您的问题考虑使用Docker运行Odoo检查您的db_用户端口?它们必须是不同的。如何在windows中执行相同的操作?有什么想法吗?谢谢,你说得对。我已经预料到,我需要使用不同的db端口(即另一个集群)从ODOO9隐藏ODOO8数据库。