OpenERP fields详解与应用
需积分: 14 92 浏览量
更新于2024-09-12
收藏 307KB PDF 举报
"本资源提供了关于OpenERP(现称Odoo)中的fields模块的详细参考,涵盖了各种字段类型及其参数设置,旨在帮助用户理解和使用这些字段进行数据模型的设计。"
在OpenERP(Odoo)中,fields模块是构建数据库模型的关键部分,它定义了模型中的各个字段及其属性。以下是对描述中提到的字段类型的详细解释:
一、基本类型
1. 简单、基本类型:
- (boolean):布尔类型,用于表示真或假。
- (Integer):整数类型,存储整数值。
- (string):字符串类型,用于存储文本数据。
- (float):浮点数类型,用于存储带有小数的数值。
- (char):与string类似,但通常用于较短的文本。
- (text):文本类型,用于存储较长的文本。
- (data):日期类型,仅存储日期,不包含时间。
- (datetime):日期和时间类型,存储日期和时间。
- (binary):二进制类型,用于存储图像、文件等二进制数据。
- (selection):选择类型,允许用户从预定义的选项中选择。
二、关系类型:
1) one2one (已废弃):
- 表示一对一的关系,一个记录对应另一个记录,通常用于扩展模型。
2) many2one:
- 表示多对一的关系,多个记录可以关联到一个记录。例如:
```python
fields.many2one('other.object.name', 'FieldName', optionalparameters)
```
- 可选参数包括:
- `ondelete`:当资源被删除时的行为,如“cascade”(级联删除)、“setnull”(设为空)、“restrict”(禁止删除)、“no action”(不做任何操作)、“setdefault”(设置默认值)。
- `required`:是否为必填字段,默认为False。
- `readonly`:是否只读,默认为False。
- `select`:是否创建外键字段上的索引,默认为False。
3) one2many:
- 表示一对多的关系,一个记录可以关联多个记录。例如:
```python
fields.one2many('other.object.name', 'Fieldrelationid', 'Fieldname', optionalparameter)
```
- 可选参数包括:
- `invisible`:字段是否可见,默认为False。
- `states`:根据记录状态控制字段的可见性。
- `readonly`:是否只读,默认为False。
4) many2many:
- 表示多对多的关系,多个记录可以关联多个记录。例如:
```python
fields.many2many('other.object.name', 'relationobject', 'actual.object.id', 'other.object.id', 'FieldName')
```
- 这些参数用于定义连接表的字段:
- `other.object.name`:其他关联对象的模型名。
- `relationobject`:创建连接的中间表的模型名。
- `actual.object.id` 和 `other.object.id`:在中间表中用于连接两个模型的字段名。
这些字段类型和参数允许开发者灵活地构建OpenERP/Odoo中的业务模型,以满足各种数据管理需求。通过理解并熟练应用这些字段,可以创建出功能丰富的应用程序,有效管理企业的数据和流程。
2021-05-30 上传
2019-04-16 上传
2019-08-29 上传
2021-05-29 上传
2021-03-13 上传
2017-09-30 上传
2010-09-09 上传
闪电侠风行
- 粉丝: 74
- 资源: 57
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍