本来是在自己MACOS笔记本上安装虚拟机,然后安装Linux+ODoo11的。但是涉及到想开发事项,共享Linux目录却在Pycharm找不到。折腾了一会,咨询了各位朋友也是有在Macos安装开发测试环境,但是过程并不顺利,仍搞不定。好多坑,也厚着脸皮问了一些人,还是没能解决,主要表现为MACOS环境能正常运行,但是Pycharm却运行有些问题。一直心有所不甘,折腾了二天,终于弄好了。下面是详细的安装开发环境,希望有需要的少走点坑,太浪费时间。
主要环境为:Macos_serria_Pycharm_Odoo11:
在些过程也参考过官方安装方式,蛮有参考作用的:
https://www.odoo.com/documentation/11.0/setup/install.html#source-install
如下记录笔记 :
1.安装postgres数据库:
登陆官网http://postgresapp.com,下载Postgres-XX.XX.dmg最新版本;
具体安装分三步,这里是官方的安装方法。
Download ➜ Move to Applications folder ➜ Double Click
Click "Initialize" to create a new server
sudo mkdir -p /etc/paths.d &&
echo /Applications/Postgres.app/Contents/Versions/latest/bin | sudo tee /etc/paths.d/postgresapp
#Configure your $PATH to use the included command line tools (optional)
2.下载安装数据库管理工具pgadmin4:https://www.pgadmin.org/download/pgadmin-4-macos/
将dmg中的程序拖拽至Applications目录,完成安装后,启动,左侧树状列表右键点击Servers,Create/Server…
弹出对话框中,Name输入local或者随便什么名字,Connection页签中,Host name/address中输入:127.0.0.1,Password中录入默认密码postgres,点击Save按钮保存。然后可以在左侧属性列表中找到添加的本地pg数据库的实例了。
3.下载安装python开发工具pycharm 最新版本:https://www.jetbrains.com/pycharm/
4.安装macOS homebrew包管理器
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
5.安装依赖环境:
5.1:安装python
brew update # brew install python
5.2:安装Pillow所需依赖
brew install freetype jpeg libpng libtiff webp xz
5.3:安装node
brew install node
5.4:安装less和 less-plugin-clean-css
sudo npm install -g less less-plugin-clean-css
6.下载Odoo11
https://github.com/odoo/odoo/
https://www.odoo.com/zh_CN/page/download #发现这二个地方的文件有些不一样,最终选择官网下载
#建议下载GIG版本,比较方便与简单。官方的源代码,会缺少一些文件,如果不懂,纠结了一天也不知道。
7.配置项目解释器
用PyCharm打开下载的odoo10目录,点击 PyCharam——Preference——Project Interpreter——Add local——New Environment——Base Interpreter,选中brew安装的python(/usr/local/bin/python2.7)——不要勾选下面的 Inherit global site-packages,可以勾选 自动在其他项目可见。
这里我折腾了好一二天,才把它配置好。一直在郁闷MACOS能运行,但是配置Pycharm却怎么不有正常运行呢,问了别人,懂的人不想再说谈配置的事情,没遇到问题的人好难发现具体问题出现在那里。
看了原来官方的文档,参考别人设置,最终才发现细节。如下所示:
首先,MACOS的环境与Pycharm的环境是不一样的。所以要先Pycharm这里指定对应的环境以及版本。注意的是,inherit global site-packages不能勾选。一开始没看明白,查了好多资料才明白别人设置的意思。
8.安装Odoo10依赖包
智能安装:一般,配置好项目解释器后,PyCharm都会自动检测到依赖,并且在菜单栏下面弹出提示安装,或者,直接打开Odoo目录下的requirements.txt,点击 “Install requirement”即可自动安装。
手动安装:
sudo easy_install pip //安装pip
pip install -r requirements.txt //安装odoo依赖包
注:psycopg2==2.6.2 安装失败的解决办法:把它从 requirement.txt 删掉。然后在 pycharm的Terminal中使用 pip install psycopg 安装最新版即可。其他类似报错类似。
注:目前我在这里执行命令是运行不了的。不知是否Pycharm环境要跟MACOS环境一样安装???
9.创建数据库登陆角色
打开PgAdmin,连接到本地数据库。在下方 “登录角色” 处右键,新增 登陆角色
【切记 权限 一项勾选 可以创建数据库,否则odoo不能通过此用户创建数据库】
10.配置项目运行选项
用PyCharm打开项目,然后在 Run 菜单下,选择 Edit Configurations ,添加运行选项:
1:Script Path :选择odoo11目录下某个.py文件,一般为 start.py、odoo-bin.py等等名称。
2:Parameters:配置启动参赛,可以通过一个文本文件来指定。参数形式主要有:
-c 使用某个配置文件来制定启动,文件中一般:指明了数据库ip、数据库端口号、数据库登陆角色、登录密码、数据库过滤......
-u 更新某个数据库
-d 指定使用某个数据库
除了要创建Python文件类型外,还要注意右边的参数设置情况,我在这里卡了大半天,测试好多次才知道重点的原因在那里。另外要注意的是,Python环境跟上图有关,一定要配置好环境。
注:这个要创建一个Python文件进行配置,不过如果对于Odoo也可以在Odoo11根目录下创建一个Odoo-bin.py文件,会自动显示配置上面所说的信息,代码如下:(特别是官方下载的源码)
#!/usr/bin/env python3
# set server timezone in UTC before time module imported
__import__('os').environ['TZ'] = 'UTC'
import odoo
if __name__ == "__main__":
odoo.cli.main()
11.配置文件
最好是安装完后,在Pycharm下的窗口输入:
~/odoo-dev/odoo/odoo-bin --save --stop-after-init #让系统自动生成配置文件。
但是我没这么复杂:
[options]
; This is the password that allows database operations:
; admin_passwd = admin
db_host = 127.0.0.1
db_port = 5432
db_user = odoo
db_password = odoo
addons_path = /Users/chenbojie/Documents/pycharm/odoo11/addons,/Users/chenbojie/Documents/pycharm/odoo11/myaddons
#或者用相对路径也行。如果不知道这个设置点,也要费点时间。
另外,特别注意的是:
odoo.sql_db: bad query: b”SELECT * FROM ir_model WHERE state=’manual'”
ERROR: relation “ir_model” does not exist
LINE 1: SELECT * FROM ir_model WHERE state=’manual’
—当用Pycharm调试时创建数据库时出现这个错误信息,除了配置环境,也许上面的文件路么里的文件出错,建议删除里面的文件。再重新试下。
12.运行odoo
点击 pycharm的 运行 按钮,启动odoo。在浏览器输入:localhost:8069 ,进入odoo。第一次登陆时,需要创建数据库。
13.其他:
运行odoo后控制台没有日志信息:配置文件日志级别设置为debug
END