• 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:下一篇文章将为大家带来包含数据库创建页面的优化。

  • 相关阅读:
    Delphi XE4 FireMonkey 开发 IOS APP 发布到 AppStore 最后一步.
    Native iOS Control Delphi XE4
    Delphi XE4 iAD Framework 支持.
    using IOS API with Delphi XE4
    GoF23种设计模式之行为型模式之命令模式
    Android青翼蝠王之ContentProvider
    Android白眉鹰王之BroadcastReceiver
    Android倚天剑之Notification之亮剑IOS
    Android紫衫龙王之Activity
    GoF23种设计模式之行为型模式之访问者模式
  • 原文地址:https://www.cnblogs.com/ljwTiey/p/11470897.html
Copyright © 2020-2023  润新知