- 博客(112)
- 资源 (7)
- 收藏
- 关注
原创 windows上修改redis端口号
redis是一个开源的内存数据结构存储系统,常用做数据库、缓存和消息代理。现在redis将在新的端口号上监听客户端的连接请求。在当前redis的安装目录下启动cmd窗口。在redis安装目录下,即。然后,保存并关闭配置文件。
2024-02-28 11:36:33 774
原创 odoo安装启动遇到的问题
3、 重启服务器看可不可以,如果还不行就重装下把数据库删除新建一个或者需要重装数据库,更改一下数据库的版本,如果重装数据库还不行就重新载入源码,可能是不小心改动了源码。2、然后在Run /Debug Configurations 里输入 -i base -d 新数据库名。问题:在第一次加载odoo配置文件的时候,启动失败。1、先检查odoo.conf的内容,尤其是路径。
2023-08-22 15:58:16 676
原创 odoo15设置定时任务
以上模块初始化后,会在数据库的 ir.cron中生成一条记录,只要程序不中断,就会一直定时执行设置的任务。在模块的data文件夹下创建一个cron_res.xml的文件。主要是 ir.cron模型,它有以下属性。
2023-08-17 11:26:08 451
原创 models问题汇总
第二步:再删除表及在ir.model.access.csv中分配给ogsp.phone表的权限,最后升级模块。第一步:先删除全部表属性,升级模块。
2023-05-30 14:08:34 190
翻译 Security in Odoo(中文翻译)
如果用户提供的数据是TEXT形式的(例如,由用户填写的表单的内容),并且如果该数据在放入CODE之前被正确转义,那么清理是无用的(但仍然可以完成)。转义将文本转换为代码。可以使用更安全的沙盒方法safe_eval,但它仍然为运行它的用户提供了巨大的功能,并且必须仅为受信任的特权用户保留,因为它打破了代码和数据之间的障碍。访问权限是附加的,用户的访问权限是他们在所有组中访问权限的并集,例如,给定一个用户属于授予读和创建访问权限的组a,而属于授予更新访问权限的组B,则该用户将拥有创建、读和更新这三种权限。
2023-05-29 10:00:56 137
原创 odoo调用ApiPost
(1,ID,{values}) 更新id=ID的记录(对id=ID的执行write 写入values里面的数据)(6,0,[IDs]) 用IDs里面的记录替换原来的记录(就是先执行(5)再执行循环IDs执行(4,ID))(2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系)(2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系)(1,ID,{values})更新id=ID的记录(写入values里面的数据)
2023-05-19 14:40:35 647
原创 Vue.js事件处理器&表单
为了处理 DOM 事件细节,如:event.preventDefault() 或 event.stopPropagation()。input 和 textarea 元素中使用 v-model 实现双向数据绑定。v-model 会根据控件类型自动选取正确的方法来更新元素。使用v-model 指令在表单控件元素上创建双向数据绑定。Vue.js 通过由点 . 表示的指令后缀来调用修饰符。如果是一个为逻辑值,如果是多个则绑定到同一个数组。v-on 可以接收一个定义的方法来调用。在监听键盘事件时添加按键修饰符。
2023-05-15 11:15:59 302
原创 Vue.js样式绑定
将 isActive 设置为 true 显示了一个绿色的 div 块,如果设置为 false 则不显示。text-danger 类背景颜色覆盖了 active 类的背景色。
2023-05-15 09:25:14 288
原创 Vue.js计算、监听属性
可以使用 methods 来替代 computed,效果上两个都是一样的,但是 computed 是基于它的依赖缓存,只有相关依赖发生改变时才会重新取值。时,setter 会被调用, vm.name 和 vm.url 也会被对应更新。vm.reversedMessage 依赖于 vm.message,在 vm.message 发生改变时,vm.reversedMessage 也会更新。可以说使用 computed 性能会更好,但是如果你不希望缓存,你可以使用 methods 属性。
2023-05-12 17:12:35 68
原创 Vue.js条件、循环语句
v-for 指令需要以 site in sites 形式的特殊语法, sites 是源数据数组并且 site 是数组元素迭代的别名。v-if 指令将根据表达式 seen 的值(true 或 false )来决定是否插入 p 元素。随机生成一个数字,判断是否大于0.5,然后输出对应信息。在元素 和 template 中使用 v-if 指令。也可以使用 v-show 指令来根据条件展示元素。v-for 可以绑定数据到数组来渲染一个列表。v-for 可以通过一个对象的属性来迭代数据。模板中使用 v-for。
2023-05-12 16:09:15 586
原创 odoo开发者工具小虫图标的使用总结
点击查看字段创建新字段填好字段名称(必须以x_开头)、字段类型、字段标签点击Save,就会在字段列表中新增这个字段扩展表单视图添加字段选取Edit View: Form选项。
2023-05-11 14:30:11 88
原创 odoo权限规则
实际情况可能会方法一和方法二结合。对不敏感的模型开放较多权限,后续开发中有需求再在view中设置domain,缩小权限。对较敏感的模型先不开放权限,再通过前端不断对特别的组添加权限。在security文件夹下创建“模块名_security.xml”的文件中编写。在菜单定义处加groups属性(或者groups_id)在py文件里,做限制。
2023-05-11 14:25:47 1189
原创 odoo之预置数据
在 XML 数据文件中,每个 元素有两个基本属性:id 和 model,并包含为对应列设置值的元素。id 属性对应记录外部标识符,model 对应目标模型。元素有几种赋值的方法,下面一起来看看。直接为字段设置值元素的 name 属性标识要写入的字段。写入的值是元素内容:字段开、闭标签之间的文本。对于日期和日期,可使用带返回 date 或 datetime 对象表达式的 eval 属性设置。返回的“YYYY-mm-dd”和“YYYY-mm-dd HH:MM:SS”字符串会进行对应转化。
2023-05-11 14:18:24 508
转载 Odoo中的env
我们知道运行代码之前要建立环境,随后在环境中执行函数,环境中的方法是能够直接使用的,而 env 便是这样的一种环境。这一点从页面C返回到页面B是不知道的,所以就需要我们使用页面的上下文来记录页面的状态,更多更复杂的页面结构,都缺少不了这种状态的记录。如果执行了错误的操作,并且上次操作中修改过的属性会影响到后续操作的进行,这个时候就有必要清除缓存,在一个无干扰的环境下执行操作。比如从页面A编辑进入页面B,从页面B查看进入页面C,以简单的三层页面嵌套来讲,从页面C返回页面B时仍然是从A进入B的编辑样式。
2023-05-11 10:55:42 162
原创 解决github访问不了的方法
1、打开网站http://tool.chinaz.com/dns/ ,在A类型的查询中输入 github.com,找到最快访问的ip地址,并复制下来。注:刷新DNS,不会影响IP(IP地址不变)4、最后重新打开浏览器访问github即可。2、修改系统文件的hosts文件。
2023-05-10 14:14:38 6205 2
原创 odoo的一些基础概念
三层体系结构,表示层是HTML5、JavaScript和CSS的组合,逻辑层专门用Python编写,而数据层只支持PostgreSQL作为RDBMS。服务器和客户端扩展都打包为模块,可选地加载到数据库中。模块是针对单一目的的函数和数据的集合。Odoo中的一切都以模块开始和结束。
2023-05-10 14:01:35 639
原创 odoo之Web Controllers(二)
返回字符串@http.route('/index', auth='public', methods=["GET"],csrf=False, cors='*')返回json不带参数@http.route('/projects', auth='public', methods=["GET"],csrf=False, cors='*')带参数1)通过设置关键字参数获取...2)通过设置不定长参数kwargs获取# kwargs是个字典。
2023-05-10 13:54:38 776
原创 odoo之Web Controllers(一)
控制器需要提供可扩展性,就像模型一样,但不能使用与先决条件(具有加载模块的数据库)可能尚不可用相同的机制(例如,未创建数据库或未选择数据库)因此,控制器提供了自己的扩展机制,与模型的扩展机制分开:控制器是通过继承自Controller创建的。路由是通过使用Route()装饰的方法定义的:要覆盖控制器,请从其类继承并覆盖相关方法,必要时重新公开它们:使用Route()装饰对于保持方法(和路由)可见是必要的:如果在不装饰的情况下重新定义方法,它将是“未发布的”所有方法的装饰器被组合在一起,如果覆盖方法的
2023-05-09 16:41:42 698
原创 Odoo的增删改查
api.model"""作用:记录创建方法。创建记录的orm函数。页面新建点击保存时触发调用。返回值为创建成功的记录集self:模型对象vals_list:页面数据列表,即要插入数据库中一条完整的数据列表,return: 返回模型对象,此处为ArticleAuthor对象,数据创建完成"""# 调用odoo自定义的create方法创建ArticleAuthor对象。
2023-05-09 16:30:54 1555
原创 Vue.js 模板语法
指令用来在 input、select、textarea、checkbox、radio 等表单控件元素上创建双向数据绑定,根据表单上的值,自动更新绑定的元素的值。在这里 href 是参数,告知 v-bind 指令将该元素的 href 属性与表达式 url 的值绑定。指令是带有 v- 前缀的特殊属性,指令用于在表达式的值改变时,将某些行为应用到 DOM 上。判断 use 的值,如果为 true 使用 class1 类的样式,否则不使用该类。按钮的事件我们可以使用 v-on 监听事件,并对用户的输入进行响应。
2023-05-09 10:44:39 729
原创 VSCode下载安装教程
安装完成后,程序自动运行,右下方会弹出一个框框,单击【Change Language and Restart】可以选择切换成中文环境,方便使用。
2023-05-06 15:28:01 3370 1
原创 odoo 常用小部件及其用法
模型字段为many2one类型,如果配置的字段过多,可以通过拖拽把常用的记录放在前面。odoo的一些小部件主要定义在:模块/static/src/js下。直接加widget属性就行,通常与button标签结合使用。模型可以根据sequence来排序,
2023-05-04 16:05:58 673
转载 Odoo中的模型继承机制
在模块定制过程中,有许多情况需要继承一些模型以实现特定的情况。类继承用于添加 features与现有视图兼容的新类存储在同一表中原型继承用于 copy features新类被现有视图忽略存储在不同的表中代理继承支持多态继承新类被现有视图忽略存储在不同的表中新实例包含一个嵌入式的模型1的实例转载自:https://zhuanlan.zhihu.com/p/395341464。
2023-04-25 10:52:18 536
原创 window11 安装node
node.js下载安装双击安装包,一直点击下一步点击change按钮,更换到自己的指定安装位置,点击下一步(不修改默认位置也是可以的 )一直点击下一步,最后安装成功即可验证查看安装的nodejs版本:node -v查看安装的npm版本:npm -v
2023-03-27 17:36:05 127
原创 执行pip list 报错:Fatal error in launcher: Unable to create process using xxxxxx
因为迁移环境导致的,虚拟环境的pip 路径有问题,重新更新一下就好。
2023-03-06 11:02:11 532 1
翻译 odoo之Data Files
Odoo在很大程度上是数据驱动的,因此模块定义的很大一部分是它管理的各种记录的定义:UI(菜单和视图)、安全性(访问权限和记录规则)、报告和普通数据都是通过记录定义的。字段的内容可以通过使用文件属性的外部文件提供,也可以通过节点的主体提供。应包含任意数量的值元素,其属性与field相同,每个元素解析为生成的元组或列表的一个项目,并将生成的集合设置为字段的值。对于前面的方法不合适的情况,eval属性只是评估它提供的任何Python表达式,并将结果设置为字段的值。可用于清除字段,或避免使用字段的默认值。
2023-02-10 15:17:14 177
原创 SaaS总结
aaS产品具有广泛的适应范围,特别是与其他云产品(如IaaS(基础设施即服务)和PaaS(平台即服务))配合使用时这种能力表现尤为突出,例如阿里云之类的云计算技术允许你配置可托管的Web站点、数据库服务器等。SaaS是一种通过Internet提供软件的模式,用户不用再购买软件,而改用向提供商租用基于Web的软件,来管理企业经营活动,且无需对软件进行维护,服务提供商会全权管理和维护软件,对于许多小型企业来说,SaaS是采用先进技术的最好途径,它消除了企业购买、构建和维护基础设施和应用程序的需要。
2023-02-07 11:44:49 162
原创 odoo中button的使用
表单可包含按钮,用于执行动作一个按钮的基本属性有:string:定义按钮显示文本type:执行的动作类型,object,action,workflow,默认是 workflowworkflow 用于触发工作流引擎信号;object 用于调用Python方法;action 用于运行窗口动作。name:所运行动作的ID,触发的方法标识。工作流信号名、模型方法名称或运行窗口动作act_window的数据库ID。class:应用 CSS 样式的可选属性,与HTML中用法相同。
2023-02-02 16:58:42 1042
原创 odoo之表单视图
可以是字段的名称,也可以是字段的id(字段上设置的id属性)。当视图中多次出现同一个字段,并且有几个标签组件与这些字段节点相关联时,这些标签的属性必须是唯一的(在本例中引用对应字段节点的id属性)。支持在表单视图中多次使用字段,并且字段可以接收修饰符“不可见”和“只读”的不同值。当字段组件没有直接放置在组中,或者设置了它的nolabel属性时,字段的标签不会自动与其值一起显示。默认情况下,组定义2列,组的大多数直接子项使用单个列。默认情况下,组的字段直接子项显示一个标签,标签和字段本身的跨度各为1。
2023-02-02 11:08:18 398
原创 Odoo甘特图
day: 记录时间快照到全天 (ex: 7:28 AM becomes 11:59:59 PM of the previous day, 10:32 PM becomes 12:00 PM of the current day)示例:default_scale周的偏移量为+1将打开下周的甘特图,default_scale月的偏移量为-2将打开2个月前的甘特图。精度属性示例: {“day”: “hour:quarter”, “week”: “day:half”, “month”: “day”}
2023-02-01 17:14:02 807
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人