首页 - Oejia 技术栈,企业方案分享、Odoo顾问 

Odoo 模块开发规范常见约定

admin on 2017-11-02 16:44:54   Odoo
Odoo 模块开发规范常见约定 ### import 尽量用相对路径 如在 models/__init__.py 中 ``` from . import product_category ``` ### 模型定义方面的约定 比如模块名wechat,模型名为“用户标签”,我们可以这样定义 文件名 models/user_tag.py ``` class UserTag(models.Mode ... ...
阅读全文
Odoo 交互式命令行 shell 的使用 在做Odoo开发时经常会希望有个类似Django shell的一个交互式命令行模式去调试研究Odoo内置的api函数或对象,其实Odoo官方内置shell的支持,运行方式如下: ``` python odoo-bin.py shell -c odoo.conf -d db_name ``` 执行后Odoo会启动一个实例加载一些全局的注册,同时会构建一个 ... ...
阅读全文

Odoo 常用的一些内置对象

admin on 2017-11-02 15:21:41   Odoo
Odoo 常用的一些内置对象 ### 统一的时间输出格式 ``` from odoo.tools import nowdt.strftime(DEFAULT_SERVER_DATETIME_FORMAT) ``` ... ...
阅读全文
巧用 Odoo act_window 的 flags实现一些个性化的视图控制 ``` 'flags': { 'sidebar': False, //是否显示sidebar区域(主要为action按钮) 'pager': False, //是否显示分页组件 'initial_mode': 'edit', // 进入时的默认视图模式 ... ...
阅读全文

Odoo 前端对象 options 介绍

admin on 2017-10-24 13:42:43   Odoo
Odoo 前端对象 options 包含的属性或成员如下: ![](/files/201710/24133723810_微信截图_20170929111739.png) 在视图xml中可以通过如下方式来配置定制 option ``` <field name="context">{ "flags": {"selectable": False} }</field> ``` ... ...
阅读全文
### 概述 Django App概念大家都知道,DjangoX 为 app 提供了配置一些app级别信息的渠道,具体做法为在 app 目录下 __init__.py中定义各个配置项 ### 支持的配置项 ``` # 设置实现的管理功能针对的哪个 app app_label = 'oms' # 该 app 一级菜单展示名称 verbose_name = u'运营相关' # 设置 app 包含 ... ...
阅读全文
### 概述 在 DjangX 列表页中可以配置显示哪些字段,还可以配置显示哪些函数计算得到结果内容 ### 自定义计算列 ``` def operate(self, obj): return '<a href="/xadmin/page/publishlist/?ids=%s" class="btn btn-primary" id="">发布</a>'%obj.id ... ...
阅读全文

DjangoX 首页面板的使用

admin on 2017-08-10 17:52:16   DjangoX
### 概述 DjangoX系统默认会产生一个面板页,也就是首页,可以通过`site.show_default_index = False`关闭面板首页的产生 ### 使用方法 首页面板对应的管理类为 `views.website.IndexView` 可以通过下面的方式来做页面内容的定制 #### 通过设置 widget 来产生 Dashboard 页面内容块 ``` # 站点首页设置 c ... ...
阅读全文

关于 Odoo 的模板引擎 Qweb

admin on 2017-02-15 10:03:59   Odoo
### 关于 Qweb Qweb 被用作(Odoo)OpenERP的 Web 客户端模板引擎,是一种基于XML的模板语言 完全在客户端浏览器中完成渲染; 一个模板文件中可以包含多个模板,通常一个模板文件中包含一个模板; ### 语法 QWeb 模板在XML属性上加前缀“t-”表示 模板名称 ``` <t t-name="message"></t> ``` 循环遍历标签 ``` <t t- ... ...
阅读全文
### 方式一:使用Qweb #### 带站点基础框的页面 **后台代码** ``` @http.route('/trial', auth='public', type='http', website=True) def trial(self, **kw): # ... values = { 'plan': trial_plan, ... ...
阅读全文