zoukankan      html  css  js  c++  java
  • odoo

    https://zhuanlan.zhihu.com/p/34878235 #ODOO服务器部署(ubuntu系统)

    https://www.jianshu.com/p/06e38310a465 #Odoo10开发教程一(构建模块)

    https://segmentfault.com/a/1190000013472741 #「Odoo 基础教程系列」第一篇——环境准备

    https://www.cnblogs.com/yangxunbo/p/10381516.html #Odoo 12 开发手册指南

    todo
    ├── __init__.py
    ├── __manifest__.py
    ├── controllers
    │   ├── __init__.py
    │   └── controllers.py
    ├── demo
    │   └── demo.xml
    ├── models
    │   ├── __init__.py
    │   └── models.py
    ├── security
    │   └── ir.model.access.csv
    └── views
        ├── templates.xml
        └── views.xml
    

    构建一个Odoo模块

    服务端扩展和客户端扩展都被封装为模块,这些模块可选择性的被安装,安装完成后通过数据库来加载。模块即可以是全新的业务逻辑,也可以是更改和扩展已有的业务逻辑。比如创建一个中国会计模块,将中国的会计准则添加到Odoo的通用会计中,也可以创建一个全新的实时可视化管理车队的模块。Odoo中的所有功能都是包含在模块中。
    模块的组成
    Odoo模块包含多个部分:
    业务对象
      Python类,这些类会被Odoo框架自动持久化,持久化的方式决定于类的定义。
    数据文件
      包括视图、菜单、动作、工作流、权限、演示数据等,以XML或CSV文件定义。
    Web控制器
      处理Web浏览器的请求
    静态页面数据
      网站或界面使用的图片、CSS或JavaScript文件

    模块结构

    每个模块都是模块目录中的一个子目录。可以通过--addons-path选项指定模块目录的路径。

    Odoo提供了脚手架机制来快速创建新模块,odoo-bin子命令scaffold用来创建一个空模块。
    首先在项目根目录创建一个mymodules文件夹。

    ./odoo-bin scaffold todo mymodules
    该命令为模块创建一个子目录,并自动为模块创建一些标准文件。这些文件大多只包含被注释的代码和XML元素。后面将解释这些文件的含义。
    得到

    数据文件

    Odoo是一个高度数据驱动的系统,虽然行为是通过Python代码制定的,但一些模块的值是在加载时通过数据文件设置的。

    提示:
    一些模块的作用仅仅是为了将数据添加到Odoo中

    模块数据通过带有元素的XML数据文件来声明。每个元素创建或更新数据库中的一个记录行。

    ,每个对应数据行中的一个字段,name属性是字段名(例如description),而body就是字段的值。

    数据文件通过在manifest文件声明而被载入,他们既可以在data列表声明(始终载入)也可以在demo列表声明(仅在演示模式下载入)

    修改监听端口

    --http-port=(或-p)参数可以修改实例的监听端口(默认端口8069),不同的端口可以让我们在同一台机器上运行多个实例。

    Odoo 11的修改:在 Odoo 11中引入--http-port参数以替代此前版本使用的--xmlrpc-port

    下面就可以做个尝试,打开两个终端,第一个中输入
    ~/odoo-dev/odoo/odoo-bin --http-port=8070

    第二个中输入
    ~/odoo-dev/odoo/odoo-bin --http-port=8071

    此时就在同一台机器上使用不同端口运行了两个 Odoo 实例,这两个实例可以使用同一个数据库或不同数据库。这取决于我们使用的配置参数,并且两个端口上也可以运行相同或不同版本的 Odoo。

    小贴士:不同 Odoo 版本必须使用不同的数据库。尝试在不同版本上使用相同数据库将无法正常运行,因为各大版本采用了不兼容的数据库模式。

  • 相关阅读:
    Docker(四):Docker基本网络配置
    Docker(三):Docker仓库配置
    Docker(二):Docker镜像使用
    OpenStack运维(四):OpenStack备份恢复
    OpenStack运维(三):OpenStack存储节点和配置管理
    OpenStack运维(二):OpenStack计算节点的故障和维护
    Eclipse Pydev添加MySQLdb模块,Windows下安装MySQL-python
    动态规划部分心得体会
    死亡骑士买道具
    动态规划部分知识点总结
  • 原文地址:https://www.cnblogs.com/plusUltra/p/11060462.html
Copyright © 2011-2022 走看看