(18)odoo规范】的更多相关文章

* 约定    # 命名会用  蛇形式或驼峰式        todo_task_stage 蛇形式        class TodoTask 驼峰式      变量名还是蛇形居多, 类名和方法名驼峰式居多          # 模式        from openerp import models            # 字段        from openerp import fields            # 翻译        from openerp import _   …
查看Odoo产品分析系列--目录 接上一篇Odoo产品分析 (二) – 商业板块(10) – 电子商务(1) 6. 高级属性 除了我们到目前为止已经覆盖基本选项,Odoo在产品页面还提供了一些高级选项.这些选项包括指定多个类别.替代产品和附件,以及直接控制商店物品的位置.  再次查看产品页:  6.1 替代商品 通常,当顾客购买一种产品时,很可能有其他的产品也可能是合适的.也许这是另一个品牌的产品,或者是他们目前正在查看的豪华版的模型.对于我们的例子,我们选择中等的T恤作为一个潜在的替代品. …
18.1 引言 *终端I/O的用途很广泛,包括用于终端.计算机之间的直接连线.调制解调器以及打印机等等,所以终端I/O系统非常复杂 18.2 综述 *终端I/O有两种不同的工作模式: (1)规范模式输入处理(Canonical mode input processing) (2)非规范模式输入处理(Noncanonical mode input processing) 18.3 特殊输入字符 *CR \r 回车符.不能更改此字符.以规范模式进行输入时识别此字符.当设置了ICANON(规范模式)和…
1.分工准备 这次的工作是结对编程,在第二次作业中我是使用python完成的作业,而小明是使用C完成的作业.因为打算使用动态链接库的方式将第二次的代码嵌入到本次的作业中,而python生成动态链接库不易实现,因此采用了小明的第二次代码. 因连通区域的解决方案在第二次作业中并没有实现,因此我们本次作业不能够实现解决联通区域的答案.本次作业的编码工作由小明同学来实现,鉴于他的代码能力比较强,并且本人并不是很擅长写图形界面.本次作业的要求也主要集中在实现一个UI,C#实现图形界面较为容易,所以最终我们…
零.准备工作 这次的作业是结对编程,因为一些原因我们的队伍一共有三个人,成员为:梁杰.夏天晗.谢祖三.由于大家不在一个班,交流起来也不是特别方便,所以我们经过讨论决定三个人约一个时间在一起完成这次作业.考虑到每个人的空闲时间,我们最后决定在周六的上午完成,地点是我的宿舍.本来准备去自习室的,但是考虑到讨论的时候声音可能会比较大影响到其他同学学习,所以换成了自习室. 周六上午集合之后,我们就开始了讨论. 首先要解决的问题就是用什么语言来写.我和夏天晗使用的是Python,谢祖三使用的是JAVA.仔…
转自:http://www.php100.com/html/php/lei/2013/0904/4199.html 作为PHP的爱好者,如果你想加入PHP程序的世界,一定要做好充分的准备.建议大家阅读一篇文章,<PHP爱好者请坚定你们的信念!>. 如果想进入大的企业进行底层开发的话必须对互联网各方面的技术原理了解的很清楚,例如apache实现原理.语言方面既然是php开发自然对 c/c++要求比较高.往往需要自己写php扩展.使用mysql自然想很多常见的,性能瓶颈要能有很好的解决方案.mys…
一.BOM BOM(Browser Object Model)是指浏览器对象模型, 它使 JavaScript 有能力与浏览器进行“对话”. 1. window 对象 一些常用的Window方法: (在浏览器调试器的console里面输入下面这些属性或者方法,就能看到对应的效果) window.innerHeight - 浏览器窗口的内部高度 window.innerWidth - 浏览器窗口的内部宽度 window.open() - 打开新窗口 window.close() - 关闭当前窗口…
Bom 概念 BOM : Browser Object Model 浏览器对象模型,描述与浏览器进行交互的方法和接 口, ECMAscript是javascript的核心,但如果要在web中使用javascript,那么 BOM则无疑才是真正的核心. BOM提供了很多对象,用于访问浏览器的功能,这些功能与任何网页内容无关. window对象 窗口高度 var  a  = window.innerheight 窗口宽度 var a = window.innerwidth 打开一个新的页面 open…
一.BOM BOM(Browser Object Model)是指浏览器对象模型, 它使 JavaScript 有能力与浏览器进行“对话”. 1. window 对象 一些常用的Window方法: (在浏览器调试器的console里面输入下面这些属性或者方法,就能看到对应的效果) window.innerHeight - 浏览器窗口的内部高度 window.innerWidth - 浏览器窗口的内部宽度 window.open() - 打开新窗口 window.close() - 关闭当前窗口…
前端基础之BOM和DOM 前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互,我们需要继续学习BOM和DOM相关知识. JavaScript分为 ECMAScript,DOM,BOM. BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进行“对话”. DOM (Document Object Model)是指文档对象…
<UNIX环境高级编程(第3版)> 基本信息 原书名:Advanced Programming in the UNIX Environment (3rd Edition) (Addison-Wesley Professional Computing Series) 原出版社: Addison-Wesley Professional 作者: (美)W. Richard Stevens    Stephen A. Rago 译者: 戚正伟 张亚英 尤晋元 出版社:人民邮电出版社 ISBN:9787…
BOM对象 location对象 location.href 获取URL location.href="URL" // 跳转到指定页面 location.reload() 重新加载页面,就是刷新一下页面 定时器 1. setTimeOut() 一段时间之后执行某个内容,执行一次 示例 var a = setTimeout(function f1(){confirm("are you ok?");},3000); var a = setTimeout("co…
day51 JSON对象 var a = {'name':'太白','age':89}; 序列化:var b = JSON.stringify(a); 反序列化:var c = JSON.parse(b); RegExp对象 var reg1 = new RegExp("^[a-zA-Z][a-zA-Z0-9_]{5,11}$"); // 简写方式 var reg2 = /^[a-zA-Z][a-zA-Z0-9_]{5,11}$/; 坑: reg2.test(); 什么也不填写,会默认…
目录 JacaScript概述 ECMAScript和JavaScript的关系 ECMAScript的历史: JavaScript的引入方式: 引入额外的JS文件: JavaScript的语言规范: JavaScript语言基础 var 变量声明(局部代码可以影响全局) 命名规范: let声明变量 不会影响全局 : const声明常量: JavaScript数据类型: 数值(Number) 字符串(String) 格式化输出: 布尔值(Boolean) null和undefined 对象(Ob…
  前端基础之BOM和DOM   前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互,我们需要继续学习BOM和DOM相关知识. JavaScript分为 ECMAScript,DOM,BOM. BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进行“对话”. DOM (Document Object Model)是指…
  前端基础之BOM和DOM   前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互,我们需要继续学习BOM和DOM相关知识. JavaScript分为 ECMAScript,DOM,BOM. BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进行“对话”. DOM (Document Object Model)是指…
前端06 /JavaScript 目录 前端06 /JavaScript 昨日内容回顾 js的引入 js的编程要求 变量 输入输出 基础数据类型 number string boolean null undefined 转换 内置对象类型 array 自定义对象 json数据类型序列化 运算符 流程控制 条件判断 循环 三元运算符 函数 今日内容 1.BOM 2.DOM 2.1 什么是dom 2.2 js是怎么给前端的web加上动作的呢? 2.3 查找标签 1.直接查找 2.间接查找 3.标签操…
js代码引入 方式1: <script> alert('欢迎来到德玛西亚!') </script> 方式2:外部文件引入 src属性值为js文件路径 <script src="test.js"></script> 变量声明 变量名是区分大小写的. 推荐使用驼峰式命名规则.首字母大写 保留字不能用做变量名. var a = 1; 数据类型 数值类型(number) 示例: var a = 1; var b = 1.1; var c = 12…
转自:http://www.chinaz.com/design/2015/0908/443732.shtml Android编码规范建议18条 适合手机app设计师和android 工程师阅读. 1.java代码中不出现中文,最多注释中可以出现中文 2.局部变量命名.静态成员变量命名 只能包含字母,单词首字母除第一个外,都为大写,其他字母都为小写 3.常量命名 只能包含字母和_,字母全部大写,单词之间用_隔开 4.图片尽量分拆成多个可重用的图片 5.服务端可以实现的,就不要放在客户端 6.引用第…
本文来源:https://www.jianshu.com/p/e892bf01f036 Odoo开发规范 模块结构 文件夹列表及对应作用 data/:演示和数据文件 models/:模型定义 controllers/:控制器(包含HTTP路由) views/:视图和模版 static/:web资源,包括css/, js/, img/, lib/, ... wizard/:向导及其视图 report/:报表 tests/:单元测试代码 文件命名 业务model放置在一个文件里,如果模块只包含一个m…
1. 不安全代码 **(注:此章对于跨多语言编程开发非常重要,如遇异常无法完成跨语言,建议使用此种方式.) 如前面几章所定义,核心 C# 语言没有将指针列入它所支持的数据类型,从而与 C 和 C++ 有着显著的区别.作为替代,C# 提供了各种引用类型,并能够创建可由垃圾回收器管理的对象.这种设计结合其他功能,使 C# 成为比 C 或 C++ 安全得多的语言.在核心 C# 语言中,不可能有未初始化的变量.“虚”指针或者超过数组的界限对其进行索引的表达式.这样,以往总是不断地烦扰 C 和 C++ 程…
本系列来自<编写高质量代码 改善python程序的91个建议>的读书笔记整理.  本章主要内容 建议8:利用assert语句来发现问题 建议9:数据交换值时不推荐使用中间交换变量 建议10:充分利用Lazy evaluation的特性 建议11:理解枚举替代实现的缺陷 建议12:不推荐使用type来进行类型检查 建议13:尽量转换为浮点类型再做除法 建议14:警惕eval()的安全漏洞 建议15:使用enumerate()获取序列迭代的索引和值 建议16:分清==与is的适用场景 建议17:考…
一 预备知识 预备知识:django的CBV和FBV CBV(class based view):多用,简单回顾一下 FBV(function based view): CBV模式的简单操作:来个登陆页面吧 login.html文件内容如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</tit…
老韩头的开发日常 ☞ [好书学习]系列 背景 作为丙方,完成了甲方的二开需求.因此,在设计二开模块的时候,考虑的是当时所列的需求清单,并整合到一个二开模块中.完成交付后,客户评价蛮好的.因此,成功的为乙方争取到了继续合作的机会.然后,就没我啥事了,尴尬... 再之后过了一两个月,另一个丙方搞不定甲方的需求,所以我又被安排上线收拾残局.而,此处接手的残局有点坑,涉及多个开发的二开模块.由于甲方的需求是分批提出,且由多个团队完成.因此,二开模块的间存在循环依赖的情况.在已经跑起来的库上运行,没有任何…
摘要: 避免作用域膨胀,对于需求如此,对于变量也是如此.变量将引入状态,而我们应该尽可能少地处理状态,变量的生存期也是越短越好. 变量的生存期超过必需的长度时会产生以下几个缺点: 1.      它们会使程序更难以理解和维护. 2.      他们的名字会污染上下文. 3.      他们不能总是被合理地初始化. 我们在定义变量的时候没有必要在作用域开始的时候把所有的变量都定义了,可以在使用该变量之前定义它即可.…
RMI是什么? RMI是指Java Remote Method Invocation,远程方法调用,RMI是Java的一组拥护开发分布式应用程序的API.RMI使用Java语言接口定义了远程对象,它集合了Java序列化和Java远程方法协议(Java Remote Method Protocol). 简单来说,RMI可以是我们的程序从一台服务器,调用另一台服务器上的方法,就像调用本地服务一样方便. RMI基本原理 RMI 构建三个抽象层, 高层覆盖低层, 分别负责Socket通信, 参数和结果的…
在本系列文章第三篇Odoo 12 开发之创建第一个 Odoo 应用中,我们概览了创建 Odoo 应用所需的所有组件.本文及接下来的一篇我们将深入到组成应用的每一层:模型层.视图层和业务逻辑层. 本文中我们将深入学习模型层,以及学习如何使用模型来设计应用所需的数据结构.我们会探索模型和字段的各项作用,包括定义模型关系.添加计算字段.创建数据约束. 本文的主要内容有: 学习项目 – 优化图书馆应用 创建模型 创建字段 模型间的关系 计算字段 模型约束 了解 Odoo的 base 模型 开发准备 本文…
本篇主要介绍JS的命名规范.注释规范以及框架开发的一些问题. 目录 1. 命名规范:介绍变量.函数.常量.构造函数.类的成员等等的命名规范 2. 注释规范:介绍单行注释.多行注释以及函数注释 3. 框架开发:介绍全局变量冲突.单全局变量以及命名空间 1. 命名规范 驼峰式命名法介绍: 驼峰式命名法由小(大)写字母开始,后续每个单词首字母都大写. 按照第一个字母是否大写,分为: ① Pascal Case 大驼峰式命名法:首字母大写.eg:StudentInfo.UserInfo.ProductI…
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 1.1WMS简介 Web地图服务(WMS)利用具有地理空间位置信息的数据制作地图.其中将地图定义为地理数据可视的表现.这个规范定义了三个操作:GetCapabitities返回服务级元数据,它是对服务信息内容和要求参数的一种描述: GetMap返回一个地图影像,其地理空间参考和大小参数是明确定义了的:GetFeatureInfo(可选)返回显示在地图上的某些特…
一.研发流程规范 二.SQL编码规范 数据库命名规范:数据库名一律小写,必须以字母开头.库名包含多个单词的,以下划线“_”分隔.如果采用分库方案,分库编号从“0”开始,用“0”左补齐为四位. 表名规范:表名一律小写,必须以字母开头.表名中包含多个单词的,以下划线“_”分隔.如果采用分表方案,同时分表编号从“0”开始,用“0”左补齐为四位.建议使用‘数据库名_表名’形式,例如:tkn_users. 字段名和字段类型规范:字段名一律小写,必须以字母开头,言简意赅且不含拼写错误的单词(限用有歧义的缩写…