odoo-8
In Odoo 8 verwendete Felder
Suche…
Einführung
Parameter
Parameter | Beschreibung |
---|---|
string = "Name" | Optionale Beschriftung des Feldes |
compute = "_ compute_name_custom" | Wandeln Sie die Felder in berechnete Felder um |
store = True | Wenn berechnet, wird das Ergebnis gespeichert |
select = True | Index auf Feld erzwingen |
readonly = wahr | Das Feld wird in Ansichten gelesen |
inverse = "_ write_name" | Beim Update-Auslöser |
erforderlich = wahr | Pflichtfeld |
übersetzen = True | Übersetzung aktivieren |
help = 'blabla' | Hilfetext der Hilfe |
comodel_name = "model.name" | Name des zugehörigen Modells |
inverse_name = "Feldname" | relationale Spalte des entgegengesetzten Modells |
relation = 'many2many_table_name' | relationaler Tabellenname für many2many |
column1 = 'left_column_name' | Name der linken Spalte der relationalen Tabelle |
column2 = 'right_column_name' | Name der rechten Spalte der relationalen Tabelle |
Bemerkungen
Odoo und ORM: Odoo verwendet die ORM-Technik (Object Relational Mapping) zur Interaktion mit der Datenbank. ORM hilft beim Erstellen einer virtuellen Objektdatenbank, die innerhalb von Python verwendet werden kann. In der ORM-Technik wird jedes Modell durch eine Klasse dargestellt, die Models.model unterordnet.
Models.model ist die wichtigste Superklasse für Odoo-Modelle mit regulärer Datenbank. Odoo-Modelle werden durch Erben von dieser Klasse erstellt.
Beispiel:
class Employee(Models.model):
_name = 'module.employee'
#Rest of the code goes here
Hier ist _name ein Strukturattribut, das dem System den Namen der zu erstellenden Datenbanktabelle mitteilt.
Jedes Modell verfügt über eine Reihe von Klassenvariablen, von denen jede ein Datenbankfeld im Modell darstellt. Jedes Feld wird durch eine Instanz einer openerp.fields.Field-Klasse dargestellt. Felder in Odoo sind unten aufgeführt.
1 Boolesches Feld
ex: flag = fields.Boolean()
2 Zeichenfeld
ex: flag = fields.Char()
3 Text
ex: flag = fields.Text()
4 Html
ex: flag = fields.Html()
5 Ganzzahl
ex: flag = fields.Integer()
6 Schwimmer
ex: flag = fields.Float()
7 Datum
ex: flag = fields.Date()
8 Datetime
ex: flag = fields.Datetime()
9 Auswahl
ex: flag = fields.Selection()
10 Many2one
ex: flag = fields.Many2one()
11 One2many
ex: flag = fields.One2many()
12 Many2many
ex: flag = fields.Many2many()
Beispielfelder von Odoo 8
Odoo verwendet die ORM-Technik (Object Relational Mapping) für die Interaktion mit der Datenbank. ORM hilft beim Erstellen einer virtuellen Objektdatenbank, die innerhalb von Python verwendet werden kann. In der ORM-Technik wird jedes Modell durch eine Klasse dargestellt, die Models.model unterordnet. Models.model ist die wichtigste Superklasse für Odoo-Modelle mit regulärer Datenbank. Odoo-Modelle werden durch Erben von dieser Klasse erstellt
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')