一、获取 Odoo 源码

Odoo 是一个开源项目,我们可以轻松的在 Github 上找到它的源码。
本次中使用的是 12.0 版本的 Odoo,所以在拉取代码时选择 12.0 的分支。
确保拉取的速度,使用--depth参数。

git clone https://github.com/odoo/odoo.git -b 12.0 --depth=1 ./odoo_dev

二、启动Odoo

在Odoo的源码根目录下有一个 odoo-bin 的 Python 脚本文件,这个是 Odoo 的启动脚本。
运行该脚本之后会在8069默认端口启动 Odoo 服务,启动之前需要运行 pipenv shell 进入虚拟环境:

方法一:

如果是用 Pycharm 启动首先需要在 Preferences > Project > Project Interpreter > Add > Existing Environment 中 将使用 pipenv 生成的 Python 添加进去,一般 pipenv 生成的虚拟环境目录在 ~/.local/share/virtualenvs/,如果是按照上一篇生成的虚拟环境, 则目录则为 ~/.local/share/virtualenvs/odoo_env-* (* 号为随机字符串)。

方法二:

$ pipenv shell

进入虚拟环境后就可以运行 Odoo 启动脚本啦(其实还没完成!!):

$ ./odoo-bin

启动后会出现这样:

2019-03-18 15:30:44,198 14047 INFO ? odoo: Odoo version 12.0
2019-03-18 15:30:44,199 14047 INFO ? odoo: Using configuration file at /home/ray/.odoorc
2019-03-18 15:30:44,199 14047 INFO ? odoo: addons paths: ['/home/ray/.local/share/Odoo/addons/12.0', '/home/ray/odoo_dev/odoo/addons', '/home/ray/odoo_dev/addons']
2019-03-18 15:30:44,199 14047 INFO ? odoo: database: odoo@default:default
2019-03-18 15:30:44,373 14047 INFO ? odoo.addons.base.models.ir_actions_report: You need Wkhtmltopdf to print a pdf version of the reports.
2019-03-18 15:30:44,544 14047 INFO ? odoo.service.server: HTTP service (werkzeug) running on ray-virtual-machine:8069
2019-03-18 15:30:44,545 14047 INFO ? odoo.modules.loading: init db
2019-03-18 15:30:45,709 14047 INFO odoo odoo.modules.loading: loading 1 modules... 

然后你访问https://IP:8069,这时候会报错,出现Server 500

原因是我们还没有在 Odoo 启动配置文件里配置数据库账号和密码,但是 Odoo 的启动配置文件在哪里呢??

这是让我们使用 ./odoo-bin --help,你会发现需要带参数。

$ ./odoo-bin --help
...Common options:-c CONFIG, --config=CONFIGspecify alternate config file-s, --save          save configuration to ~/.odoorc (or to~/.openerp_serverrc if it exists)
...

我们可以看到有 -c-s,

-c代表我们可以自己知道启动的配置文件。

-s 是Odoo 会在 home 目录下生成 .odoorc 配置文件,并且用 -c 参数可以指定启动的配置文件。

若不指定 Odoo 的运行配置文件,并且 home 目录下存在 .odoorc 配置文件,则 Odoo 默认会选择这个作为启动的配置文件。

所有我们可以先运行./odoo-bin -s , 先创建home目录下的一个.odoorc配置文件:

$ ./odoo-bin -s

然后编辑 ~/.odoorc 文件,将 db_user 和 db_password 分别修改为我们在安装 PostgreSQL时设置的用户 odoo 和这个用户的密码。

...
db_password = 123456
...
db_user = odoo
...

再次运行启动脚本启动 Odoo,这时已经可以成功访问 http://localhost:8069 了,并且进入的是一个数据库选择页面, 我们可以直接选择 odoo 数据库或者点击 「Manage Databases」跳转到数据库创建页面。

这里是进入我在pycharm指定的odoo数据库了。账号和密码默认都是admin。

登录成功后:

PS:

正常的话照上面的步骤就是可以完成odoo的启动的,但是有时候事情并不是一帆风顺,总会出现错误,下面就来说说我在搭建的过程中出现的错误吧:

错误一:odoo删除数据库后出现的KeyError:'ir.http',在我成功搭建后,手贱把odoo用户中的一个数据库删掉了,导致在./odoo-bin -s 启动的时候出现了此错误

解决办法:

①首先看一下配置文件的数据库信息是否正确

②在pycharm中,在Run /Debug Configurations 里输入 -i base -d 新数据库名

更新中...

转载于:https://www.cnblogs.com/ray-h/p/10556151.html

记录搭建Odoo框架相关推荐

  1. 使用maven搭建ssm框架的javaweb项目

    目前主流的javaweb项目,常会用到ssm(Spring+Spring MVC+Mybatis)框架来搭建项目的主体框架,本篇介绍搭建SSM框架的maven项目的实施流程.记之共享! 一.SSM框架 ...

  2. 用pycharm搭建odoo 12, 11,10 开发调试环境

    用pycharm搭建odoo 12, 11,10 开发调试环境 个人认为在windows平台下Pycharm 是最好的 odoo开发工具, 配置简单,操作简便,界面清爽,支持远程调试python,ja ...

  3. Spring框架学习笔记09:基于XML配置方式搭建SSM框架实现用户登录

    文章目录 一.采用MVC架构 二.用户登录运行效果 三.基于XML配置方式搭建SSM框架实现用户登录 (一)创建数据库与表 - simonshop (t_user) 1.创建数据库 - simonsh ...

  4. 在eclipse中搭建struts2框架的详细过程

    今天想学习struts2框架,所以搭建了一个struts框架,记录一下搭建struts2的详细过程. 一.搭建环境:   Eclipse:Mars.1 Release(4.5.1) JDK: jdk1 ...

  5. 从头搭建rpc框架_#LearnByDIY-如何从头开始创建JavaScript单元测试框架

    从头搭建rpc框架 by Alcides Queiroz 通过Alcides Queiroz #LearnByDIY-如何从头开始创建JavaScript单元测试框架 (#LearnByDIY - H ...

  6. 使用idea搭建ssm框架,并实现简单的CRUD和分页查询功能

    1.使用idea搭建ssm框架步骤,请参考本人博客 2.项目搭建好,创建以下目录 3.在pom.xml文件中引入依赖 <?xml version="1.0" encoding ...

  7. 软件工程课程设计·SOA架构搭建SSM框架的网上商城系统

    软件工程课程设计·SOA架构搭建SSM框架的网上商城系统 项目简介 本系统利用SSM框架.Dubbo框架.Maven模块化开发等技术开发的一个网上商城项目,主要包括订单系统模块.购物车系统模块.搜索系 ...

  8. 小米5S升级 并且搭建XP框架(原先已有)

    记录小米5s更新系统后重新搭建XP框架,主要是为了自己以后方便使用. 1.升级系统(系统更新) 2.获得root权限(稳定版需要刷入第三方recovery) 具体:重启到recovery(系统更新-重 ...

  9. Maven搭建Spring框架

    Maven搭建Spring框架 一.前言 二.准备工作 1.IDE 2.创建项目 3.导入jar包 三.创建实体 四.创建Spring配置文件 五.测试 结果 结束语 一.前言 这一篇我会比较详细的将 ...

最新文章

  1. Java基础概念(一)
  2. OpenCV边缘检测专题
  3. 如何快速将下载好的大量源代码文件加入到VS项目中
  4. Dubbo生产者消费者配置
  5. IOS8 兼容本地推送
  6. 一个JAXB Nuance:字符串与枚举(受限制的XSD字符串)
  7. PAT1132: Cut Integer
  8. Java案例:利用JDBC访问SQL Server数据库
  9. LEFT OUTER JOIN
  10. 软件设计模式学习笔记(八)
  11. Http请求get、post工具类
  12. “磁碟机”病毒技术分析报告
  13. 龙果学院从无到有构建亿级微服务秒杀系统
  14. 什么是GRE词汇红宝书?
  15. Ubuntu 访问共享文件夹
  16. 全国高校经纬度(txt版)
  17. 使用gca警告: Calling gca() with keyword arguments was deprecated in Matplotlib 3.4.
  18. 蘑菇街网站的扫二维码登录是怎么做到的?
  19. Huilder连接Android逍遥模拟器
  20. 【Java入门基础第10天】Java常用的转义字符

热门文章

  1. python需要学多长时间
  2. 程序员需要学习太多数学知识吗?
  3. 【OpenCV】OpenCV函数精讲之 -- 通道分离:split()函数
  4. 2所“双一流”大学官宣:博士招生考试,延期!
  5. 图像分类最新技术综述论文: 21种半监督、自监督和无监督学习方法一较高低
  6. 谷歌开源EfficientNets:ImageNet准确率创纪录,效率提高10倍
  7. php js鼠标滚动刷新,利用php和js实现页面数据刷新
  8. 5分钟了解VMware vSAN的分布式RAID
  9. Android SDK中tools详解
  10. Android大环境杂谈待续中