Zoeken…


Invoering

In dit gedeelte vindt u details over de velden die in Odoo 8 worden gebruikt

parameters

parameters Beschrijving
String = "Naam" Optioneel label van het veld
compute = "_ compute_name_custom" Transformeer de velden in berekende velden
store = True Als het wordt berekend, wordt het resultaat opgeslagen
select = True Forceer index op veld
readonly = true Veld wordt alleen in weergaven gelezen
inverse = "_ write_name" Bij update trigger
required = True Verplicht veld
vertalen = True Vertaling inschakelen
help = 'blabla' Help-knoptekst
comodel_name = "model.name" Naam van het gerelateerde model
inverse_name = "field_name" relationele kolom van het tegenovergestelde model
verhouding = 'many2many_table_name' relationele tabelnaam voor many2many
columns1 = 'left_column_name' relationele tabel linkerkolomnaam
kolom2 = 'right_column_name' relationele tabel rechter kolomnaam

Opmerkingen

Odoo en ORM: Odoo gebruikt de ORM-techniek (Object Relational Mapping) om te communiceren met de database. ORM helpt bij het maken van een virtuele objectdatabase die vanuit Python kan worden gebruikt. In de ORM-techniek wordt elk model vertegenwoordigd door een klasse die de modellen Models.model.

Models.model is de belangrijkste superklasse voor Odoo-modellen met reguliere databases. Odoo-modellen worden gemaakt door over te nemen van deze klasse.

Voorbeeld:

class Employee(Models.model):
    _name = 'module.employee'

    #Rest of the code goes here

Hier is _naam een structureel kenmerk dat het systeem vertelt over de naam van de te maken databasetabel.

Elk model heeft een aantal klassenvariabelen, die elk een databaseveld in het model vertegenwoordigen. Elk veld wordt vertegenwoordigd door een instantie van een klasse openerp.fields.Field. Velden in Odoo worden hieronder weergegeven ..

1 Boolean Field

ex: flag = fields.Boolean()

2 Char veld

ex: flag = fields.Char()

3 tekst

ex: flag = fields.Text()

4 html

ex: flag = fields.Html()

5 Geheel getal

ex: flag = fields.Integer()

6 Vlotter

ex: flag = fields.Float()

7 datum

ex: flag = fields.Date()

8 Datetime

ex: flag = fields.Datetime()

9 Selectie

ex: flag = fields.Selection()

10 Many2one

ex: flag = fields.Many2one()

11 One2many

ex: flag = fields.One2many()

12 Many2many

ex: flag = fields.Many2many()

Voorbeeldenvelden van Odoo 8

Odoo gebruikt de ORM-techniek (Object Relational Mapping) om te communiceren met de database. ORM helpt bij het maken van een virtuele objectdatabase die vanuit Python kan worden gebruikt. In de ORM-techniek wordt elk model vertegenwoordigd door een klasse die een subklasse is van Models.model. Models.model is de belangrijkste superklasse voor Odoo-modellen met reguliere databases. Odoo-modellen worden gemaakt door over te nemen van deze klasse

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
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow