odoo-8
Odoo 8で使用されるフィールド
サーチ…
前書き
ここでは、Odoo 8で使用されているフィールドの詳細を見つけることができます
パラメーター
パラメーター | 説明 |
---|---|
string = "名前" | フィールドのオプションのラベル |
compute = "_ compute_name_custom" | フィールドを計算フィールドに変換する |
store = True | 計算された場合、結果が保存されます |
select = True | フィールドにインデックスを強制する |
readonly = True | フィールドはビューでのみ読み込まれます |
逆= "_書き込み名" | 更新トリガ時 |
必須= True | 必須フィールド |
translate = True | 翻訳イネーブル |
ヘルプ= 'blabla' | ヘルプのツールチップテキスト |
comodel_name = "model.name" | 関連モデルの名前 |
inverse_name = "field_name" | 反対のモデルの関係列 |
relation = 'many2many_table_name' | many2manyのリレーショナルテーブル名 |
columns1 = 'left_column_name' | リレーショナル表の左列名 |
column2 = 'right_column_name' | リレーショナル表の右列名 |
備考
OdooとORM: OdooはORM(Object Relational Mapping)技術を使用してデータベースと対話します。 ORMは、Pythonから使用できる仮想オブジェクトデータベースを作成するのに役立ちます。 ORM技法では、各モデルは、Models.modelをサブクラス化するクラスによって表される。
Models.modelは、通常のデータベース永続化Odooモデルのメインスーパークラスです。 Odooモデルは、このクラスを継承して作成されます。
例:
class Employee(Models.model):
_name = 'module.employee'
#Rest of the code goes here
ここで、_nameは構造属性で、作成するデータベーステーブルの名前をシステムに通知します。
各モデルには多数のクラス変数があり、各クラス変数はモデルのデータベースフィールドを表します。各フィールドはopenerp.fields.Fieldクラスのインスタンスで表されます。 Odooのフィールドは以下の通りです。
1ブールフィールド
ex: flag = fields.Boolean()
2 Charフィールド
ex: flag = fields.Char()
3テキスト
ex: flag = fields.Text()
4 Html
ex: flag = fields.Html()
5整数
ex: flag = fields.Integer()
6フロート
ex: flag = fields.Float()
7日付
ex: flag = fields.Date()
8日時
ex: flag = fields.Datetime()
9選択
ex: flag = fields.Selection()
10 Many2one
ex: flag = fields.Many2one()
11 One2many
ex: flag = fields.One2many()
12 Many2many
ex: flag = fields.Many2many()
Odoo 8の例フィールド
OdooはORM(Object Relational Mapping)技術を使用してデータベースと対話します。 ORMは、Pythonから使用できる仮想オブジェクトデータベースを作成するのに役立ちます。 ORM技術では、各モデルは、Models.modelのサブクラスであるクラスによって表される。 Models.modelは、通常のデータベース永続化Odooモデルのメインスーパークラスです。 Odooモデルはこのクラスを継承して作成されます
name = fields.Char(string='New Value')
flag = fields.Boolean(string='Flag',default=False)
amount = fields.Float(string='Amount',digits=(32, 32))
code = fields.Selection(string='Code',selection=[('a', 'A'),('b','B')])
customer = fields.Many2one(comodel_name='res.users')
sale_order_line = fields.One2many(comodel_name='res.users', inverse_name='rel_id')
tags = fields.Many2many(comodel_name='res.users',
relation='table_name',
column1='col_name',
column2='other_col_name')
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow