odoo 订餐系统之消息提醒
打算入手odoo开发新的系统,先研究下开发的过程是如何的。案例模仿自带的订餐系统,此系统模块不多,但很典型,可以达到联系的目的。先记录下订餐系统消息提醒的开发过程。
1.添加自己的addons目录myaddons,方便以后的管理。并在文件openerp-server.conf中加入该路径,注意用逗号分隔

2.建立应用系统文件夹mylunch,并添加文件__init__.py和 __openerp__.py。并在__openerp__.py文件中填写应用模块的基本信息.

3.虽然还没开始任何业务代码的开发,但此时我们可以依赖框架安装自己的应用了,用管理员登录系统,去开启技术特性,更新应用程序,搜索我们的程序名mylunch,点击安装即可。


安装之后的数据库信息查询结果

4.添加我们的model类。在mylunch文件夹下添加mylunch.py文件,增加mylunch.alert类。

然后继续升级我们的应用程序。

升级后的model类信息和表字段信息


5.在mylunch目录下添加view视图文件mylunch_view.xml文件,设置mylunch的菜单,使用默认的tree和form布局

升级mylunch程序后的运行效果


6.我们使用了默认的tree和form效果,界面不是很美,我们自己定义自己的视图布局。

form布局控制

程序升级后的效果图,tree视图没大的变化,主要看form布局,尤其是可以根据字段的取值不同或显示或隐藏其他字段。



经过设计之后的form布局比之前更优雅好看了。不过我们的搜索栏还是默认的效果,如下图:

添加serach视图:

升级后的效果:

7.基本可以实现了alert消息的显示效果,不过由于我们使用的是管理员权限查看的效果,如果普通用户登录之后是看不到MyLunch菜单的,这里就涉及到了权限的问题,在之前的安装升级的过程中,可以看到如下的权限警告信息:

8.设置应用程序的权限,在mylunch文件夹下建立security目录,然后添加mylunch_security.xml文件,内容如下:

这里添加了两个组,一个是MyLunch User组,另一个是Mylunch Manager组,前者没有添加默认的用户,后者则添加了默认的用户
在security目录下新建ir.model.access.csv文件,给alert类分配CRUD权限到对应的组中:

这里需要注意的是model_id?id对应的值规则: "model_"+A,其中A为model类名,用"_"替代".",如本例子是mylunch.alert类名,则结果取值是model_mylunch_alert.
将新添加的两个文件路径配置到__openerp__.py的data字段中去:

升级应用之前ir_model_access表 中的数据条数如下:

升级应用程序,ir+model_access表中的数据变化:

以普通用户登录网站,仍旧是看不到MyLunch菜单的:

将普通用户添加到MyLunch Manager组之后的效果:


这样我们基本将odoo开发的流程走了一遍,万事开头难,总算完成了我们的第一个应用的模块,接下来就是熟悉开发的过程和具体的知识点。
odoo 订餐系统之消息提醒的更多相关文章
- odoo订餐系统之订单设计
订餐系统的主要功能便是用户下单部分,这里我们分为表头mylunch_order和表体mylunch_order_line两张主要的数据表,表头主要记录订单的一些通用信息,比如下单的操作人员 下单日期 ...
- odoo订餐系统之菜单设计
1.model类的设计 class MyLunchProduction(osv.Model): _name = "mylunch.production" _description ...
- odoo订餐系统之类型设计
这次开发的模块是订餐的类型设计,比如大荤 小荤 蔬菜 米饭 等基本数据.1.设计model类,很简单就一个字段: class MyLunchProductionCategory(osv.Model): ...
- odoo订餐系统之订单相关知识点理解
1.对重载函数name_get的理解 第一,此函数位于Model基类中,返回值是一个list列表,列表中的每个值是如(key,value)形式的键值对,此处为(id,name). 第二,在自己的Mod ...
- Python flask构建微信小程序订餐系统
第1章 <Python Flask构建微信小程序订餐系统>课程简介 本章内容会带领大家通览整体架构,功能模块,及学习建议.让大家在一个清晰的开发思路下,进行后续的学习.同时领着大家登陆ht ...
- PHP实现RTX发送消息提醒
RTX是腾讯公司推出的企业级即时通信平台,大多数公司都在使用它,但是我们很多时候需要将自己系统或者产品的一些通知实时推送给RTX,这就需要用到RTX的服务端SDK,建议先去看看RTX的SDK开发文档( ...
- 终于等到你---订餐系统之负载均衡(nginx+memcached+ftp上传图片+iis)
又见毕业 对面工商大学的毕业生叕在拍毕业照了,一个个脸上都挂满了笑容,也许是满意自己四年的修行,也许是期待步入繁华的社会... 恰逢其时的连绵细雨与满天柳絮,似乎也是在映衬他们心中那些离别的忧伤,与对 ...
- RTX发送消息提醒实现以及注意事项
一.RTX简介 RTX是腾讯公司推出的企业级即时通信平台.该平台定位于降低企业通信费用,增强企业内部沟通能力,改善企业与客户之间的沟通渠道,创造新兴的企业沟通文化,提高企业生产力.RTX平台的主要功能 ...
- jquery 消息提醒插件 toastmessage
最近做系统,想到使用后台要使用消息提醒,但是一直苦恼消息提醒的效果,于是找了一个toastmessage,还不错.记录下使用的方法. 第一步:引入需要的文件 <script type=" ...
随机推荐
- SuperMap iObject .NET开发完成后私有部署,打包安装
转载自:http://blog.csdn.net/supermapsupport/article/details/53319800 作者:皇皇 SuperMap iObjict .NET组件开发结束后 ...
- Linux 学习笔记之超详细基础linux命令 Part 10
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 9----------------- ...
- 安卓开发_浅谈DatePicker(日期选择器)
DatePicker继承自FrameLayout类,日期选择控件的主要功能是向用户提供包含年.月.日的日期数据并允许用户对其修改.如果要捕获用户修改日期选择控件中的数据事件,需要为DatePicker ...
- Centos 下添加开机自启动服务和脚本
最近刚玩Centos7的系统,跟Centos6还是很多方面有改变的,这里记录一下怎么在Centos7下添加开机自启动脚本和服务的方法. 1.添加开机自启服务 我这里以docker 服务为例,设置如下两 ...
- centos6.9设置桥接网络模式方法
第一步:设置 VMware 在 VMware 中打开[编辑]->[虚拟网络编辑器],添加 VMnet0,并选择桥接模式.需要注意的是,需要选择“桥接到”的网卡,使用无线网卡就选无线网卡,使用有线 ...
- 17秋 软件工程 团队第五次作业 Alpha Scrum11
17秋 软件工程 团队第五次作业 Alpha Scrum11 今日完成的任务 世强:管理员头像图片上传和显示逻辑处理,活动添加及上传图片: 港晨:完成Web界面前后端对接: 树民:标准化后端接口格式: ...
- 【Beta Scrum】冲刺! 3/5
1. 今日完成情况 人员 学号 分工 是否完成 完成情况 胡武成 031502610 完成登录注册api,协助web端完成api N SDN课程实践加上课缘故,仅仅写完了登录注册的逻辑判断内容,但是短 ...
- JDBC学习笔记之SQLException介绍
1. SQLException 的概述 当使用 JDBC 与数据源(在本文中的数据源表示我们实际使用的数据库)进行交互的时候遇见错误的时候,将会抛出名为 SQLException 的异常.一个 SQL ...
- Python3编写网络爬虫07-基本解析库pyquery的使用
三.pyquery 简介:同样是一个强大的网页解析工具 它提供了和jQuery类似的语法来解析HTML文档,支持CSS选择器,使用非常方便 安装: pip install pyquery 验证: im ...
- 字符串之StringBuffer 与 StringBuilder的对比
StringBuilder 和 StringBuffer是高度类似的两个类 StringBuilder是StringBuffer的版本改写,下面从几个方面简单的对比下他们的区别 原文地址:[十四]基础 ...