odoo12從零開始:一、安裝odoo運行環境(mac)


寫在前面:

      接觸odoo已經兩年多了,在大學做課程設計的時候,無意間了解到odoo這個erp框架,當時的odoo在國內還默默無聞,我也不曾想過自己畢業后會從事到odoo框架的相關開發工作中來。兩年多的時間里,我見證了它在國內的發展,也隨着工作經驗的積累,對odoo已經有了一定的了解,在這里,我希望能分享自己兩年多來學習到的一些知識和經驗,也希望有可能吸引到更多的朋友加入到odoo的開發中來。

      根據初步的想法,文章將會包含odoo開發環境的搭建(Mac),個性化,ORM模塊,controller,視圖、模板、記錄以及其繼承機制,widget,權限,打印模板,報表,部署,源碼分析等部分。關於更新時間,由於本人家境貧寒,每日上下班通勤時間高達三個小時,工作日能抽出的時間比較有限,主要將在周末更新。給自己定一個小目標,每周至少更新兩到三篇文章。

 

 

 

 

在Mac Os上安裝odoo12開發環境

我們將要安裝的軟件包:

1)、git: 代碼管理

2)、postgres: odoo12運行所需要的數據庫

3)、docker: 用於構建postgres容器,pgadmin4容器

4)、>=python3.5: odoo12運行的python環境

4)、odoo requirements: 運行odoo需要的python依賴包

項目代碼:

git clone -b v1.0 https://github.com/lingjiawen/odoo_project.git

 

1、安裝homebrew

打開終端,輸入:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

 

2、安裝git

brew install git

安裝完成后,查看git版本檢查是否安裝成功:

 

3、安裝python3

最新款的mac已經自己安裝python2.7 和 python3.7,檢查運行版本:

如果沒有,使用homebrew進行安裝(homebrew安裝python3會自動安裝pip3):

brew install python3

 

4、安裝python虛擬環境

pip3 install virtualenv

查看是否安裝成功:

創建python3虛擬環境到用戶目錄並激活:

virtualenv -p python3 ~/odoo12_project #創建虛擬環境
source ~/odoo12_project/bin/active   #激活虛擬環境

 

5、拉取代碼並安裝依賴:

mkdir -pv ~/code/odoo_project  # 建立工作目錄
cd ~/code/odoo_project  # 進入工作目錄
git clone -b 12.0 https://github.com/odoo/odoo.git

安裝所需依賴:

brew install freetype jpeg libpng libtiff xz webp
brew install node # 安裝node
npm install -g less less-plugin-clean-css #使用node安裝依賴
# 完成后進入odoo12目錄
cd odoo12
pip3 install -r requirements.txt # 安裝requirements

安裝pgcopy2可能會出現如下報錯:

 

 可能的解決方法:

方法1:
pip3 uninstall psycopg2
pip3 list --outdated
pip3 install --upgrade wheel
pip3 install --upgrade setuptools
pip3 install psycopg2
方法2:
xcode-select --install

如果上述兩種方法無法解決,那么嘗試下列辦法:

vim requirements.txt # 編輯文件
# 找到psycopg2
# 在前面添加'#'注釋
# 保存退出
pip3 install psycopg2-binary==2.8.3 # 手動安裝
# 重新安裝requirements
pip3 install -r requirements.txt

 

6、安裝docker

直接訪問官網hub登錄下載docker桌面版並運行: https://hub.docker.com/editions/community/docker-ce-desktop-mac

 

查看docker和docker-compose版本:

 

7、使用docker安裝postgres數據庫

docker pull postgres:10
docker pull dpage/pgadmin4

進入項目路徑,創建db運行的docker-compose文件:

cd ~/code/odoo12_project/
touch docker-compose_db.yaml
vim docker-compose_db.yaml

文件如下:

version: '2'
services:
   postgres_10_db:
        image: postgres:10
        container_name: postgres_10_db
        environment:
            - POSTGRES_USER=odoo12
            - POSTGRES_PASSWORD=odoo12
            - POSTGRES_DB=postgres
            - PGDATA=/var/lib/postgresql/data/pgdata
        volumes:
            - postgres_10_db_volume:/var/lib/postgresql/data/pgdata
        ports:
            - "5432:5432"
        network_mode: bridge

volumes:
        postgres_10_db_volume:
                external: true

創建容器Volume並運行:

docker volume create --name=postgres_10_db_volume
docker-compose -f docker-compose_db.yaml up -d # 守護態運行
# 運行pgadmin, 賬號密碼請自己設置
docker run -p 8888:80 \
    -e “PGADMIN_DEFAULT_EMAIL=sysadmin" \
    -e “PGADMIN_DEFAULT_PASSWORD=sysadmin" \
    -d dpage/pgadmin4

查看運行狀態:

 我們已經注意到數據庫已經運行,端口為5432,pgadmin運行端口為8888,在瀏覽器輸入localhost:8888訪問pgadmin:

 8、使用pycharm運行odoo12:

1)打開pycharm(如沒有pycharm請自行下載安裝,不再贅述),打開項目,如圖:

 

2)設置虛擬環境運行:

左上角點開pycharm->preferences->project->project interpreter->setting->add:

3)選擇existing environment,路徑選擇剛剛創建的odoo12_project/bin.python,點擊ok。

4)添加啟動文件:

在目錄下新建config目錄,在config目錄下新建odoo.conf文件:

[options]
addons_path = ~/code/odoo12_project/odoo12/odoo/addons,~/code/odoo12_project/odoo12/addons
; admin_passwd = admin
; csv_internal_sep = ,
db_host = 0.0.0.0
db_password = odoo12
db_user = odoo12
db_port = 5432
; db_maxconn = 64
; db_name = False
; db_template = template1
; dbfilter = .*
; debug_mode = False
; email_from = False
; limit_memory_hard = 2684354560
; limit_memory_soft = 2147483648
; limit_request = 8192
;limit_time_cpu = 12000
;limit_time_real = 24000
; list_db = True
; log_db = False
; log_handler = [':INFO']
; log_level = info
; logfile = None
; longpolling_port = 8072
; max_cron_threads = 2
; osv_memory_age_limit = 1.0
; osv_memory_count_limit = False
; smtp_password = False
; smtp_port = 25
; smtp_server = localhost
; smtp_ssl = False
; smtp_user = False
; workers = 5
; xmlrpc = True
; xmlrpc_interface =
; xmlrpc_port = 8069
; xmlrpcs = True
; xmlrpcs_interface =
; xmlrpcs_port = 8071

在主目錄下新建啟動文件set-up,並添加以下內容:

#!/usr/bin/env python3

# set server timezone in UTC before time module imported
import os
import sys
__import__('os').environ['TZ'] = 'UTC'

LIB_PATH = os.path.join(os.path.split(os.path.realpath(__file__))[0], '.', 'odoo12')
sys.path.append(LIB_PATH)

import odoo

if __name__ == "__main__":
    odoo.cli.main()

最后目錄結構如下:

5)pycharm添加配置文件:

 

 

 

 

Script path: 選擇剛才建立的set-up文件

Parameters:指定定配置文件,-c config/odoo.conf

Python interpreter:選擇剛才配置的虛擬環境

 

6)點擊運行按鈕,我們可以看到odoo12已經在8069端口運行:

7)使用瀏覽器訪問localhost:8069查看效果:

Tips:下一篇文章將為大家帶來包含數據庫創建頁面的優化。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM