odoo17 | 开发环境设置

前言

开始odoo17开发之前,请先掌握python的基本语法和工具包的使用,以及postgres数据库的安装,和简单的sql使用。以及一些前端的html、css、javascript等前端知识,以及xml、json等数据传输的使用。

  • 本教程同时适用于odoo15-17

准备

1.Python安装

Odoo15-17建议使用对应的python的版本为python3.10及以上的版本!
官网地址: https://www.python.org/downloads/

2.PyCharm安装

odoo的开发工具,建议选择PyCharm来开发,对小白比较友好,也可以使用其他代码编辑器工具,如vscode等。

官网地址: https://www.jetbrains.com/pycharm/download/other.html

3.PostgreSQL数据库安装

因为odoo强集成了postgresql,所以只能用postgresql,不能用其他数据库,odoo所用的数据库集成 ,在开发的时候可以随意增加或删除字段,因此给开发者省去了重构及清库的麻烦。
官网地址: https://www.postgresql.org/download/
具体安装攻略详见我的CSDN:
《windoes 10 安装PostgresSQL数据库简单教程》,也可百度查考其他的更为简单的教程。

4.准备Odoo源代码

在官网下载Odoo源代码,需要点击社区(Community) ,源码( Sources)下载才能做二次开发

  • 官网地址: https://www.odoo.com/zh_CN/page/download
    在这里插入图片描述
    也可以通过git在github克隆到本地

  • github项目地址 https://github.com/odoo/odoo

  • 国内gitee镜像项目地址 https://gitee.com/mirrors/odoo

5.安装 Odoo依赖

将下载后到odoo压缩包解压到一个比较大的磁盘目录下,然后用PyCharm打开odoo项目根目录。
在这里插入图片描述
PyCharm打开项目后,会自动监测,提示让你创建一个虚拟环境,点击ok按钮后,会自动下载odoo所需要的依赖依赖包到虚拟环境中。
在这里插入图片描述

odoo配置环境

标准做法:在odoo的根目录文件夹下(和odoo-bin文件同级)创建一个名为odoo.config配置文件

  • 配置文件的名称和位置自己可以随意,比如改成server.config也行,位置不在根目录下也行,最后启动 启动命令中 添加上 正确配置文件的路径就行(一般不建议)。
  • 一般推荐使用odoo.config且放在和odoo-bin文件同级目录下,这样做运行odoo-bin就不需要指定配置文件了,因为它默认就是找同级目录下名为odoo.config文件

配置内容如下:

[options]
#odoo插件的目录
addons_path = addons
#postgres数据库名称(没有该数据库时会创建该数据库)
db_name= odoo-data
#postgres数据库地址
db_host= 127.0.0.1
#postgres数据库端口
db_port= 5432
#postgres数据库用户名
db_user= tarzan
#postgres数据库密码
db_password= 123456
#odoo服务网页端口(可省略,默认为8069)
http_port = 8069
##监听HTTP服务的接口地址 0.0.0.0表示可以被所有地址访问 (可省略,默认为0.0.0.0)
http-interface = 0.0.0.0
  • 如果配置文件的编码是utf-8,请把注释去掉或者修改为英文,否则会报错 或者 将配置文件的编码修改gbk格式即可。
  • 插件目录位置可以配置多个用,隔开就行
    例如: addons_path = addons,custom_addons

启动 Odoo命令

参数描述
-c指定配置文件 配置的.conf文件例如:-c ./config/.conf
-u升级App 在多个App(应用/模块)中,开发的时候只修改了其中一个
那么就不需要重新升级所有的App,直须升级修改后的.例如:-u app
–dev=xml开发模式下使用可以很多app升级的操作,修改py文件只需要重启服务,
修改视图文件只需要刷新浏览器即可更新
  • -c 可以单独使用,使用-u 或者 --dev=xml 则必须要与-c一起

例如启动:

-c E:/work_space/odoo-dev/odoo-16.0/odoo.conf --dev=all

或者

-c odoo.conf --dev=all

odoo.cofig和odoo-bin同级时,在PyCharm中配置 Run/Debug Configurations,配置参数如下:
在这里插入图片描述

  • 如果需要指定配置文件位置,则需要使用 -c odoo.conf(你的配置文件文职) --dev=all

最后点击启动按钮运行 odoo-bin文件,即可。
在这里插入图片描述

登录到Odoo

在浏览器上打开 http://localhost:8069/。我们建议使用 Chrome、Firefox 或 任何其他带有开发工具的浏览器。

要以管理员用户身份登录,请使用以下凭据:

  • 电子邮件:admin
  • 密码:admin
    在这里插入图片描述

设置中文显示

odoo默认是英文显示的,所以我们需要把语言设置为简体中文。
超管用户登录后,点击用户头像,点击 Preferences后会出现一个用户设置弹框。
在这里插入图片描述
点击Language 后面的地球图标,添加简体中文。
在这里插入图片描述
输入字符”c“,搜索中文后,选择简体中文,点检Add按钮后,会再弹出一个框。
在这里插入图片描述
点击 Switch to Chinese (Simplified) / 简体中文 & Close 按钮即可切换为中文显示。
在这里插入图片描述

启用开发人员模式

开发人员或调试模式对于训练很有用,因为它可以访问其他(高级) 工具。在接下来的章节中,我们将始终假设您已经启用了开发人员模式。

点击网站左上方的九宫格,选择 设置点击,打开设置页面。
在这里插入图片描述
在一般设置页面,下面找到开发者工具栏,点击激活开发者模式即可。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/590090.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++判定终端ip和目标ip是否在同一局域网内

程序如下&#xff1a;用于判断给定的终端 IP、子网掩码和目标 IP 是否在同一局域网内。请注意&#xff0c;这个程序假设 IP 地址是用整数表示的。 #include <iostream> #include <sstream> #include <vector> #include <bitset>// Function to check …

《微信小程序开发从入门到实战》学习六十八

6.6 网络API 6.6.1 网络API 使用wx.request接口可以发起网络请求。该接口接受一个Object参&#xff0c;参数支持属性如下所示&#xff1a; url(必填)&#xff1a;开发者服务器地址 data&#xff1a;请求的参数&#xff0c;类型为string/object/ArrayBuffer header&#xf…

go语言语法基础

文章目录 前言一、输入和输出常用的字符串格式化符号 二、注释三、Go常用基本语言数据类型数字类型布尔类型字符类型变量与常量数组和切片数组切片 map类型创建map增删改查特别提醒 指针 四、运算符五、条件判断语句if系列switch六、循环语句for循环标准写法死循环while循环do …

阿里云Alibaba Cloud Linux 3.2104 LTS 64位镜像系统介绍

阿里云Alibaba Cloud Linux 3.2104 LTS 64位镜像是可以选择的&#xff0c;它阿里云打造的Linux服务器操作系统发行版&#xff0c;针对云服务器ECS做了大量深度优化&#xff0c;完全兼容RHEL/CentOS生态和操作方式&#xff0c;如果是阿里云服务器ECS建议选择Alibaba Cloud Linux…

Primavera Unifier 项目控制延伸:Phase Gate理论:2/3

阶段Gate的具体内容&#xff1a; 阶段0 根据公司需要和资源现状&#xff0c;决定开展哪些项目。在这个阶段&#xff0c;公司一般需要开展一些脑力风暴或者团队集思广益的活动以获得足够多的点子。一旦团队决定采用某个想法&#xff0c;必须从各个维度去完善它&#xff0c;并使…

【FileZilla的安装与使用(主动与被动模式详解,以及如何利用FileZilla搭建FTP服务器并且进行访问)】

目录 一、FileZilla介绍 1.1 简介 1.2 重要信息和功能 二、FileZilla的安装与使用 2.1 FileZilla服务端安装与配置 2.1.1 安装步骤 2.1.2 新建组 2.1.3 新建用户 2.1.4 新建目录 2.1.5 权限分配 &#xff08;1&#xff09;用户Milk权限分配 &#xff08;2&#xff…

使用 Hyper-V 创建虚拟机

使用 Hyper-V 创建虚拟机 官网教程修改存储目录Hyper-V管理器创建虚拟机启动虚拟机Win10安装教程Press any key to boot from CD or DVD...... 如何使用Windows自带的虚拟机工具来创建虚拟机&#xff0c; 快速创建虚拟机进行学习探讨&#xff0c;如果有环境问题可以立即创建一个…

元旦小礼品:想去面试的时候如何快速打造自己的面试亮点

新年快乐&#xff01; 对于毕业生&#xff0c;或者工作时间不太长的同学来说&#xff0c;面试实习之前写简历是一件很痛苦的事情&#xff0c;特别是简历上没什么亮点&#xff0c;总感觉很心虚。这时候就会发现很多人凡是知道的&#xff0c;叫得上名字的统统写上去。可惜即使通…

前端八股文(HTML篇)一

目录 1.什么是DOCTYPE,有何用呢&#xff1f; 2.说说对html语义化的理解 3.src和href的区别&#xff1f; 4.title与h1的区别&#xff0c;b与strong的区别&#xff0c;i与em的区别&#xff1f; 5.什么是严格模式与混杂模式&#xff1f; 6.前端页面有哪三层构成&#xff0c;分…

VMware之FTP的简介以及搭建使用计算机端口的介绍

&#x1f3ac; 艳艳耶✌️&#xff1a;个人主页 &#x1f525; 个人专栏 &#xff1a;《产品经理如何画泳道图&流程图》 ⛺️ 越努力 &#xff0c;越幸运 目录 一、FTP介绍 1、什么是FTP&#xff1a; 2、FTP适用于以下情况和应用场景&#xff1a; 3、winServer2012搭…

软件测试/测试开发丨Linux 三剑客与管道使用

1、 程序运行环境输入与输出 标准输入 0 read a;echo $a标准输出 1 echo ceshiren.com错误输出 ls not_exist_dir 2、 管道重定向 管道与管道之间可以重定向管道与文件之间可以重定向 echo 11 > /tmp/1 read var </tmp/1错误输出&#xff1a; ls not_exist_dir > /…

ubuntu:beyond compare 4 This license key has been revoked 解决办法

https://www.cnblogs.com/zhibei/p/12095431.html 错误如图所示&#xff1a; 解决办法&#xff1a; &#xff08;1&#xff09;先用find命令找到bcompare所在位置&#xff1a;sudo find /home/ -name *bcompare &#xff08;2&#xff09;进入 /home/whf/.config,删除/bco…

【瞎折腾/3D】无父物体下物体的旋转与移动

目录 说在前面移动World SpaceLocal Space 旋转World SpaceLocal Space 代码 说在前面 测试环境&#xff1a;Microsoft Edge 120.0.2210.91three.js版本&#xff1a;0.160.0其他&#xff1a;本篇文章中只探讨了无父对象下的移动与旋转&#xff0c;有父对象的情况将在下篇文章中…

剑指offer题解合集——Week2day7

文章目录 剑指offerWeek2周日&#xff1a;链表中倒数第k个节点AC代码思路&#xff1a; 周日&#xff1a;链表中环的入口结点AC代码思路&#xff1a; 剑指offerWeek2 周日&#xff1a;链表中倒数第k个节点 题目链接&#xff1a;链表中倒数第k个节点 输入一个链表&#xff0c…

springboot 接收appsflyer 参数

1、官网登陆&#xff1a;hq1.appsflyer.com a、配置接收请求的地址和需要的事件 配置详情 2、Controller配置接收 RequestMapping(value "/req", method POST)ResponseBodypublic ResData req(RequestBody Map<String, String> map) {String jsonObject J…

一文搞懂什么是缓存穿透、缓存雪崩、缓存击穿三个概念,以及解决方案

先理解概念&#xff1a;【注&#xff1a;我们这里说的是分布式、高并发环境】 一、缓存穿透是什么&#xff1f; 缓存穿透是指&#xff1a;请求【可以有很多】的数据在缓存、关系型数据库中都不存在&#xff0c;每次来查询都会查询到关系型数据库中。 解决方案&#xff1a; 1、将…

CUMT--Java复习--核心类

目录 一、装箱与拆箱 二、“”与equals 三、字符串类 1、String、StringBuffer、StringBuilder的区别 2、String类 3、StringBuffer类 4、StringBuilder类 四、类与类之间关系 一、装箱与拆箱 基本类型与对应封装类之间能够自动进行转换&#xff0c;本质就是Java的自…

强烈推荐 25个 前端开源中后台管理系统

作为程序员&#xff0c;构建一套个人专属的后台管理系统非常重要。这不仅是为了打造自己独有的开发生态&#xff0c;更是因为我们正处于个人开发和AI模型泛滥的时代。利用AI增强自己的系统变得尤为关键。然而&#xff0c;在UI界面设计方面&#xff0c;我们可能需要参考开源项目…

mysql原理--Explain详解

1.概述 一条查询语句在经过 MySQL 查询优化器的各种基于成本和规则的优化会后生成一个所谓的 执行计划 &#xff0c;这个执行计划展示了接下来具体执行查询的方式&#xff0c;比如多表连接的顺序是什么&#xff0c;对于每个表采用什么访问方法来具体执行查询等等。设计 MySQL 的…

实时交通标志检测和分类(代码)

交通标志检测和分类技术是一种基于计算机视觉和深度学习的先进技术&#xff0c;能够识别道路上的各种交通标志&#xff0c;并对其进行分类和识别。这项技术在智能交通系统、自动驾驶汽车和交通安全管理领域具有重要的应用前景。下面我将结合实时交通标志检测和分类的重要性、技…