| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/19.0/test_orm |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Hidden/Tests |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo S.A. |
| MAINTAINERS | |
| MAINTAINERS | Odoo S.A. |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Guewen Baconnier, Lucas Perais (lpe), Julien Mougenot, std-odoo, Achraf (abz), Rémy Voet (ryv), Ruben Gomes, Adrien Widart (awt), Victor Piryns (pivi), Chong Wang (cwg), Pierre Pulinckx, Krzysztof Magusiak (krma), Ajit Singh, Dhwani Patel, Patrick Stooks, adip-odoo, cro, Zachary (zavan) |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 01:51:47 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base - web - web_tour |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | A module to test the ORM. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
category_form |
category form view | test_orm.category | form | New |
category_tree |
category list view | test_orm.category | list | New |
compute_editable_form |
test_orm.compute_editable.form | test_orm.compute_editable | form | New |
discussion_form |
discussion form view | test_orm.discussion | form | New |
discussion_form_2 |
discussion form view | test_orm.discussion | form | New |
discussion_form_3 |
discussion form view | test_orm.discussion | form | New |
message_form |
message form view | test_orm.message | form | New |
message_tree |
message list view | test_orm.message | list | New |
model_parent_form |
model parent form view | test_orm.model_parent_m2o | form | New |
model_shared_cache_compute_parent_view_form |
model_shared_cache_compute_parent_view_form | test_orm.model_shared_cache_compute_parent | form | New |
multi_form |
multi form view | test_orm.multi | form | New |
multi_tree |
multi list view | test_orm.multi | list | New |
view_form_onchange_partial_view |
Onchange partial view: missing company_id field | test_orm.onchange.partial.view | form | New |
view_model2_some_access |
Test attrs and groups_sub | test_orm.model2.some_access | form | New |
view_model_all_access |
Test attrs and groups | test_orm.model.all_access | form | New |
view_model_model_active_field_search |
Test Active Search | test_orm.model_active_field | search | New |
view_model_model_active_field_tree |
Test Active List | test_orm.model_active_field | list | New |
view_model_no_access |
Test attrs and groups | test_orm.model.no_access | form | New |
view_model_some_access |
Test attrs and groups | test_orm.model.some_access | form | New |
view_model_some_access_tree |
Test attrs and groups list | test_orm.model.some_access | list | New |
float
Float
float_2
Float
digits=(16, 2)
float_4
Float
digits=(16, 4)
No public methods.
bool_false
Boolean
default=False
args: 'b2'
bool_true
Boolean
default=True
args: 'b1'
bool_undefined
Boolean
No public methods.
link_sibling_id
Many2one → test_orm.any.child
parent_id
Many2one → test_orm.any.parent
ondelete='cascade'
required=True
args: 'test_orm.any.parent'
quantity
Integer
tag_ids
Many2many → test_orm.any.tag
No public methods.
child_ids
One2many → test_orm.any.child
name
Char
No public methods.
child_ids
Many2many → test_orm.any.child
name
Char
No public methods.
name
Char
compute='_compute_name'
compute_sudo=True
store=True
res_id
Integer
required=True
res_model
Char
required=True
modified(self, fnames, *args, **kwargs)
attachment_ids
One2many → test_orm.attachment
bypass_search_access=True
domain=<expr>
args: 'test_orm.attachment', 'res_id'
m2m_attachment_ids
Many2many → test_orm.attachment
bypass_search_access=True
args: 'test_orm.attachment'
real_attachment_ids
One2many → ir.attachment
bypass_search_access=True
domain=<expr>
args: 'ir.attachment', 'res_id'
real_binary
Binary
attachment=True
real_m2m_attachment_ids
Many2many → ir.attachment
bypass_search_access=True
args: 'ir.attachment'
No public methods.
expire_at
Datetime
No public methods.
foo
Many2one → test_orm.foo
compute='_compute_foo'
search='_search_foo'
args: 'test_orm.foo'
name
Char
text1
Char
readonly=False
related='foo.text'
args: 'Text1'
text2
Char
readonly=False
related='foo.text'
trim=True
args: 'Text2'
value1
Integer
readonly=False
related='foo.value1'
value2
Integer
readonly=False
related='foo.value2'
No public methods.
image_attachment
Binary
attachment=True
image_wo_attachment
Binary
attachment=False
image_wo_attachment_related
Binary
attachment=False
related='image_wo_attachment'
store=True
args: 'image wo attachment'
name
Char
required=True
No public methods.
bar
Char
compute='_compute_bar'
baz
Char
compute='_compute_baz'
store=True
foo
Char
No public methods.
color
Integer
depth
Integer
compute='_compute_depth'
discussions
Many2many → test_orm.discussion
display_name
Char
inverse='_inverse_display_name'
recursive=True
dummy
Char
store=False
name
Char
required=True
parent
Many2one → test_orm.category
ondelete='cascade'
args: 'test_orm.category'
parent_path
Char
index=True
root_categ
Many2one → test_orm.category
compute='_compute_root_categ'
args: 'test_orm.category'
No public methods.
country_id
Many2one → test_orm.country
name
Char
No public methods.
company_id
Many2one → res.company
company_dependent=True
args: 'res.company'
count
Integer
company_dependent=True
date
Date
company_dependent=True
foo
Char
company_dependent=True
html1
Html
company_dependent=True
sanitize=False
html2
Html
company_dependent=True
sanitize_attributes=True
strip_classes=True
strip_style=True
moment
Datetime
company_dependent=True
partner_id
Many2one → res.partner
company_dependent=True
args: 'res.partner'
phi
Float
company_dependent=True
digits=(2, 5)
tag_id
Many2one → test_orm.multi.tag
company_dependent=True
args: 'test_orm.multi.tag'
text
Text
company_dependent=True
truth
Boolean
company_dependent=True
No public methods.
bar
Char
compute='_compute_bar'
store=True
company
Many2one → test_orm.company
quantity
Integer
No public methods.
member_count
Integer
compute='_compute_member_count'
store=True
member_ids
One2many → test_orm.compute.member
name
Char
name_translated
Char
translate=True
No public methods.
name
Char
value
Integer
compute='_compute_value'
store=True
No public methods.
created_id
Many2one → test_orm.compute.created
compute='_compute_created'
store=True
args: 'test_orm.compute.created'
name
Char
No public methods.
full_name
Char
compute='_compute_full_name'
name1
Char
name2
Char
name3
Char
No public methods.
bar
Char
compute='_compute_bar'
inverse='_inverse_bar'
store=True
baz
Char
child_ids
One2many → test_orm.compute.inverse
compute='_compute_child_ids'
inverse='_inverse_child_ids'
store=True
args: 'test_orm.compute.inverse', 'parent_id'
foo
Char
parent_id
Many2one → test_orm.compute.inverse
No public methods.
container_context_id
Many2one → test_orm.compute.container
compute='_compute_container_context_id'
search='_search_container_context'
args: 'test_orm.compute.container'
container_context_name
Char
related='container_context_id.name'
string='Container Context Name'
container_context_name_translated
Char
related='container_context_id.name_translated'
string='Container Context Name Translated'
container_id
Many2one → test_orm.compute.container
compute='_compute_container'
store=True
args: 'test_orm.compute.container'
container_super_id
Many2one → test_orm.compute.container
string='Container For SUPERUSER'
args: 'test_orm.compute.container'
name
Char
No public methods.
active
Boolean
bar
Char
compute='_compute_bar'
store=True
baz
Char
compute='_compute_baz'
readonly=False
store=True
count
Integer
default=0
foo
Char
line_ids
One2many → test_orm.compute.onchange.line
compute='_compute_line_ids'
readonly=False
store=True
args: 'test_orm.compute.onchange.line', 'record_id'
quux
Char
compute='_compute_quux'
tag_ids
Many2many → test_orm.multi.tag
compute='_compute_tag_ids'
readonly=False
store=True
args: 'test_orm.multi.tag'
copy_data(self, default=None)
bar
Char
compute='_compute_bar'
foo
Char
record_id
Many2one → test_orm.compute.onchange
ondelete='cascade'
args: 'test_orm.compute.onchange'
No public methods.
bar
Char
compute='_compute_bar'
store=True
foo
Char
default=''
No public methods.
bar
Char
compute='_compute_bar'
readonly=False
store=True
foo
Char
No public methods.
name_for_uid
Char
compute='_compute_name_for_uid'
compute_sudo=True
No public methods.
bar
Char
compute='_compute_bar'
bare
Char
compute='_compute_bare'
readonly=False
bares
Char
compute='_compute_bares'
readonly=False
store=True
bars
Char
compute='_compute_bars'
store=True
foo
Char
No public methods.
line_ids
One2many → test_orm.compute_editable.line
precision_rounding
Float
default=0.01
digits=(1, 10)
No public methods.
count
Integer
edit
Integer
compute='_compute_edit'
readonly=False
store=True
one_compute
Float
compute='_compute_one_compute'
parent_id
Many2one → test_orm.compute_editable
same
Integer
compute='_compute_same'
store=True
value
Integer
No public methods.
bar
Integer
foo
Integer
name
Char
sub_bar
Integer
sub_foo
Integer
compute='_compute_sub_foo'
No public methods.
all_line_ids
One2many → test_orm.computed_inverse_one2many_line
high_priority_line_ids
One2many → test_orm.computed_inverse_one2many_line
compute='_compute_priority_line_ids'
inverse='_inverse_line_ids'
args: 'test_orm.computed_inverse_one2many_line'
low_priority_line_ids
One2many → test_orm.computed_inverse_one2many_line
compute='_compute_priority_line_ids'
inverse='_inverse_line_ids'
args: 'test_orm.computed_inverse_one2many_line'
name
Char
No public methods.
name
Char
parent_id
Many2one → test_orm.computed_inverse_one2many
priority
Integer
No public methods.
name
Char
No public methods.
author_id
Many2one → test_orm.person
lesson_ids
One2many → test_orm.lesson
m2o_reference_id
Many2oneReference
model_field='m2o_reference_model'
string='reference to lesson too'
m2o_reference_model
Char
string='reference to the model for m2o_reference'
name
Char
private_field
Char
groups='base.group_no_one'
reference
Reference
selection='_selection_reference_model'
string='reference to lesson'
No public methods.
editions
One2many → test_orm.creativework.edition
domain=[('res_model', '=', 'test_orm.creativework.book')]
args: 'test_orm.creativework.edition', 'res_id'
name
Char
No public methods.
name
Char
res_id
Integer
required=True
res_model
Char
readonly=False
related='res_model_id.model'
store=True
res_model_id
Many2one → ir.model
ondelete='cascade'
required=True
args: 'ir.model'
No public methods.
editions
One2many → test_orm.creativework.edition
domain=[('res_model', '=', 'test_orm.creativework.movie')]
args: 'test_orm.creativework.edition', 'res_id'
name
Char
No public methods.
pirate_id
Many2one → test_orm.pirate
prisoner_id
Many2one → test_orm.prisoner
ship_id
Many2one → test_orm.ship
No public methods.
sum_quantity
Integer
tag_id
Many2one → test_orm.any.tag
No public methods.
sum_quantity
Integer
tag_id
Many2one → test_orm.any.tag
No public methods.
sum_quantity
Integer
tag_id
Many2one → test_orm.any.tag
init(self)
attributes_definition
PropertiesDefinition
categories
Many2many → test_orm.category
emails
One2many → test_orm.emailmessage
history
Json
default={'delete_messages': []}
args: 'History'
important_emails
One2many → test_orm.emailmessage
domain=[('important', '=', True)]
args: 'test_orm.emailmessage', 'discussion'
important_messages
One2many → test_orm.message
domain=[('important', '=', True)]
args: 'test_orm.message', 'discussion'
message_concat
Text
string='Message concatenate'
messages
One2many → test_orm.message
copy=True
args: 'test_orm.message', 'discussion'
moderator
Many2one → res.users
name
Char
help='Description of discussion.'
required=True
string='Title'
participants
Many2many → res.users
context={'active_test': False}
args: 'res.users'
very_important_messages
One2many → test_orm.message
domain=<expr>
args: 'test_orm.message', 'discussion'
No public methods.
display_name
Char
store=True
No public methods.
No new fields.
Public methods (0)No public methods.
active
Boolean
related='message.active'
related_sudo=False
store=True
args: 'Active Message'
email_to
Char
message
Many2one → test_orm.message
ondelete='cascade'
required=True
args: 'test_orm.message', 'Message'
No public methods.
all_employee_ids
One2many → test_orm.person
context={'active_test': False}
args: 'test_orm.person', 'employer_id'
employee_ids
One2many → test_orm.person
name
Char
No public methods.
name
Char
No public methods.
number
Integer
No public methods.
pArTneR_321_id
Many2one → res.partner
No public methods.
name
Char
text
Char
trim=False
value1
Integer
change_default=True
value2
Integer
No public methods.
name
Char
user_ids
Many2many → test_orm.user
No public methods.
node_id
Many2one → test_orm.hierarchy.node
No public methods.
child_ids
One2many → test_orm.hierarchy.node
inverse_name='parent_id'
args: 'test_orm.hierarchy.node'
name
Char
parent_id
Many2one → test_orm.hierarchy.node
No public methods.
name
Text
index='trigram'
translate=True
args: 'Name trigram'
No public methods.
model_computed_ids
One2many → test_orm.model_many2one_reference
compute='_compute_model_computed_ids'
string='Models Computed'
args: 'test_orm.model_many2one_reference'
model_ids
One2many → test_orm.model_many2one_reference
domain=[('const', '=', True)]
string='Models'
args: 'test_orm.model_many2one_reference', 'res_id'
model_ids_count
Integer
compute='_compute_model_ids_count'
args: 'Count'
No public methods.
attendee_ids
Many2many → test_orm.person
context={'active_test': False}
args: 'test_orm.person', 'lesson_ids'
course_id
Many2one → test_orm.course
date
Date
name
Char
teacher_birthdate
Date
related='teacher_id.birthday'
teacher_id
Many2one → test_orm.person
No public methods.
active
Boolean
default=True
attributes
Properties
definition='discussion.attributes_definition'
string='Discussion Properties'
author
Many2one → res.users
default=<expr>
args: 'res.users'
author_partner
Many2one → res.partner
compute='_compute_author_partner'
search='_search_author_partner'
args: 'res.partner'
body
Text
index='trigram'
discussion
Many2one → test_orm.discussion
ondelete='cascade'
args: 'test_orm.discussion'
discussion_name
Char
readonly=False
related='discussion.name'
string='Discussion Name'
display_name
Char
string='Abstract'
double_size
Integer
compute='_compute_double_size'
has_important_sibling
Boolean
compute='_compute_has_important_sibling'
search='_search_has_important_sibling'
important
Boolean
label
Char
translate=True
name
Char
compute='_compute_name'
store=True
string='Title'
priority
Integer
size
Integer
compute='_compute_size'
search='_search_size'
write(self, vals)
amount
Monetary
comment0
Html
comment1
Html
sanitize=False
comment2
Html
sanitize_attributes=True
strip_classes=False
comment3
Html
sanitize_attributes=True
strip_classes=True
comment4
Html
sanitize_attributes=True
strip_style=True
comment5
Html
sanitize_attributes=False
sanitize_overridable=True
count
Integer
currency_id
Many2one → res.currency
default=<expr>
args: 'res.currency'
date
Date
foo
Char
lang
Selection
selection='_get_lang'
string='Language'
moment
Datetime
now
Datetime
compute='_compute_now'
number
Float
default=3.14
digits=(10, 2)
number2
Float
digits='ORM Precision'
reference
Reference
selection='_reference_models'
string='Related Document'
text
Text
truth
Boolean
No public methods.
No new fields.
Public methods (0)No public methods.
ab
Integer
default=1
cd
Integer
default=1
groups='base.group_portal'
ef
Integer
default=1
action_full(self)
ab
Integer
default=1
cd
Integer
default=1
groups='base.group_portal'
No public methods.
a
Integer
b
Integer
c
Integer
d
Integer
default=1
groups='base.group_erp_manager'
e
Integer
default=1
groups='base.group_erp_manager,base.group_multi_company'
f
Integer
groups='base.group_erp_manager,base.group_portal'
g
Integer
default=1
groups='base.group_erp_manager,base.group_multi_company,!base.group_portal'
g_id
Many2one → test_orm.model.all_access
string='m2o g_id'
args: 'test_orm.model.all_access'
h
Integer
default=1
groups='base.group_erp_manager,!base.group_portal'
i
Integer
default=1
groups='!base.group_portal'
j
Integer
default=1
groups='base.group_portal'
k
Integer
default=1
groups='base.group_public'
No public methods.
g_d
Integer
related='g_id.d'
g_id
Many2one → test_orm.model.some_access
domain='[("a", "=", g_d)]'
args: 'test_orm.model.some_access'
No public methods.
xxx_id
Many2one → test_orm.model2.some_access
xxx_sub_id
Many2one
related='xxx_id.g_id'
No public methods.
a_restricted_b_ids
Many2many → test_orm.model_b
relation='rel_model_a_model_b_1'
args: 'test_orm.model_b'
b_restricted_b_ids
Many2many → test_orm.model_b
ondelete='restrict'
relation='rel_model_a_model_b_2'
args: 'test_orm.model_b'
name
Char
No public methods.
active
Boolean
default=True
active_children_ids
One2many → test_orm.model_active_field
context={'active_test': True}
args: 'test_orm.model_active_field', 'parent_id'
all_children_ids
One2many → test_orm.model_active_field
context={'active_test': False}
args: 'test_orm.model_active_field', 'parent_id'
all_relatives_ids
Many2many → test_orm.model_active_field
context={'active_test': False}
args: 'test_orm.model_active_field', 'model_active_field_relatives_rel', 'source_id', 'dest_id'
children_ids
One2many → test_orm.model_active_field
name
Char
parent_active
Boolean
related='parent_id.active'
store=True
string='Active Parent'
parent_id
Many2one → test_orm.model_active_field
relatives_ids
Many2many → test_orm.model_active_field
No public methods.
a_restricted_a_ids
Many2many → test_orm.model_a
ondelete='restrict'
relation='rel_model_a_model_b_1'
args: 'test_orm.model_a'
b_restricted_a_ids
Many2many → test_orm.model_a
relation='rel_model_a_model_b_2'
args: 'test_orm.model_a'
name
Char
No public methods.
binary
Binary
binary_computed
Binary
compute='_compute_binary'
binary_related_no_store
Binary
readonly=False
related='binary'
store=False
args: 'Binary Related No Store'
binary_related_store
Binary
readonly=False
related='binary'
store=True
args: 'Binary Related Store'
binary_x_filename
Char
binary_x_filename2
Char
No public methods.
company_id
Many2one → res.company
name
Char
parent_id
Many2one → test_orm.model_parent
check_company=True
string='Parent'
args: 'test_orm.model_parent'
parent_ids
Many2many → test_orm.model_parent
check_company=True
string='Parents'
args: 'test_orm.model_parent'
No public methods.
cost
Integer
compute='_compute_cost'
readonly=False
store=True
name
Char
parent_id
Many2one → test_orm.model_parent_m2o
ondelete='cascade'
args: 'test_orm.model_parent_m2o'
size1
Integer
compute='_compute_sizes'
store=True
size2
Integer
compute='_compute_sizes'
store=True
write(self, vals)
company_id
Many2one → res.company
name
Char
parent_id
Many2one → test_orm.model_parent
check_company=False
args: 'test_orm.model_parent'
No public methods.
bar
Integer
foo
Char
No public methods.
image
Image
image_128
Image
max_height=128
max_width=128
args: 'Image 128'
image_256
Image
max_height=256
max_width=256
readonly=False
related='image'
store=False
args: 'Image 256'
image_512
Image
max_height=512
max_width=512
readonly=False
related='image'
store=True
args: 'Image 512'
image_64
Image
attachment=False
max_height=64
max_width=64
readonly=False
related='image'
store=True
args: 'Image 64'
name
Char
required=True
No public methods.
const
Boolean
default=True
res_id
Many2oneReference
model_field='res_model'
args: 'Resource ID'
res_model
Char
No public methods.
company_id
Many2one → res.company
name
Char
No public methods.
child_ids
One2many → test_orm.model_child_m2o
string='Children'
args: 'test_orm.model_child_m2o', 'parent_id'
cost
Integer
compute='_compute_cost'
store=True
name
Char
No public methods.
my_selection
Selection
No public methods.
my_selection
Selection
ondelete={'quux': 'set null'}
selection_add=[('quux', 'Quux')]
No public methods.
my_selection
Selection
selection_add=[('ham', 'Ham')]
No public methods.
my_selection
Selection
company_dependent=True
args: [('manual', 'Manual'), ('auto', 'Automatic')]
No public methods.
my_selection
Selection
selection_add=[('semi_auto', 'Semi-Automatic')]
No public methods.
my_selection
Selection
store=False
args: [('foo', 'Foo'), ('bar', 'Bar')]
No public methods.
related_selection
Selection
related='selection_id.my_selection'
selection_id
Many2one → test_orm.model_selection_base
comodel_name='test_orm.model_selection_base'
required=True
No public methods.
related_selection
Selection
readonly=False
related='selection_id.my_selection'
selection_id
Many2one → test_orm.model_selection_base
comodel_name='test_orm.model_selection_base'
required=True
No public methods.
active
Boolean
default=True
my_selection
Selection
default='foo'
required=True
args: [('foo', 'Foo'), ('bar', 'Bar')]
No public methods.
my_selection
Selection
ondelete={'baz': 'set default'}
selection_add=[('baz', 'Baz')]
No public methods.
my_selection
Selection
ondelete={'eggs': 'cascade'}
selection_add=[('eggs', 'Eggs')]
No public methods.
my_selection
Selection
ondelete={'bacon': 'set bar'}
selection_add=[('bacon', 'Bacon')]
No public methods.
my_selection
Selection
ondelete={'pikachu': 'set default', 'eevee': <expr>}
selection_add=[('pikachu', 'Pikachu'), ('eevee', 'Eevee')]
No public methods.
my_selection
Selection
ondelete={'knickers': <expr>}
selection_add=[('knickers', 'Oh la la')]
No public methods.
my_selection
Selection
default='foo'
required=True
args: [('foo', 'Foo'), ('bar', 'Bar')]
No public methods.
my_selection
Selection
ondelete={'divinity': 'set default'}
selection_add=[('divinity', 'Divinity: Original Sin 2')]
write(self, vals)
amount
Integer
parent_id
Many2one → test_orm.model_shared_cache_compute_parent
user_id
Many2one → res.users
default=<expr>
args: 'res.users'
No public methods.
line_ids
One2many → test_orm.model_shared_cache_compute_line
string='Timesheets'
args: 'test_orm.model_shared_cache_compute_line', 'parent_id'
name
Char
string='Task Name'
total_amount
Integer
compute='_compute_total_amount'
compute_sudo=True
store=True
No public methods.
line_ids
One2many → test_orm.modified.line
name
Char
total_quantity
Integer
compute='_compute_total_quantity'
No public methods.
child_ids
One2many → test_orm.modified.line
modified_id
Many2one → test_orm.modified
modified_name
Char
related='modified_id.name'
parent_id
Many2one → test_orm.modified.line
price
Float
quantity
Integer
total_price
Float
compute='_compute_total_quantity'
recursive=True
total_price_quantity
Float
compute='_compute_total_price_quantity'
No public methods.
amount
Monetary
currency_field='base_currency_id'
base_currency_id
Many2one → res.currency
No public methods.
monetary_id
Many2one → test_orm.monetary_base
x_amount
Monetary
related='monetary_id.amount'
x_currency_id
Many2one → res.currency
related='monetary_id.base_currency_id'
args: 'res.currency'
No public methods.
currency_id
Many2one → res.currency
monetary_id
Many2one → test_orm.monetary_base
ondelete='cascade'
required=True
args: 'test_orm.monetary_base'
No public methods.
currency_id
Many2one → res.currency
line_ids
One2many → test_orm.monetary_order_line
total
Monetary
compute='_compute_total'
store=True
No public methods.
order_id
Many2one → test_orm.monetary_order
ondelete='cascade'
required=True
args: 'test_orm.monetary_order'
subtotal
Float
digits=(10, 2)
No public methods.
amount
Monetary
related='monetary_id.amount'
currency_id
Many2one → res.currency
related='monetary_id.base_currency_id'
args: 'res.currency'
monetary_id
Many2one → test_orm.monetary_base
total
Monetary
No public methods.
line_ids
One2many → test_orm.move_line
domain=[('visible', '=', True)]
args: 'test_orm.move_line', 'move_id'
payment_amount
Integer
compute='_compute_payment_amount'
payment_ids
One2many → test_orm.payment
quantity
Integer
compute='_compute_quantity'
store=True
tag_id
Many2one → test_orm.multi.tag
tag_name
Char
related='tag_id.name'
tag_repeat
Integer
tag_string
Char
compute='_compute_tag_string'
No public methods.
move_id
Many2one → test_orm.move
ondelete='cascade'
required=True
args: 'test_orm.move'
quantity
Integer
visible
Boolean
default=True
No public methods.
lines
One2many → test_orm.multi.line
name
Char
readonly=True
related='partner.name'
partner
Many2one → res.partner
partners
One2many
related='partner.child_ids'
tags
Many2many → test_orm.multi.tag
domain=[('name', 'ilike', 'a')]
args: 'test_orm.multi.tag'
No public methods.
multi
Many2one → test_orm.multi
ondelete='cascade'
args: 'test_orm.multi'
name
Char
partner
Many2one
related='multi.partner'
store=True
tags
Many2many → test_orm.multi.tag
No public methods.
No new fields.
Public methods (0)No public methods.
name
Char
No public methods.
bar1
Char
compute='_compute_bars'
inverse='_inverse_bar1'
store=True
bar2
Char
compute='_compute_bars'
inverse='_inverse_bar23'
store=True
bar3
Char
compute='_compute_bars'
inverse='_inverse_bar23'
store=True
foo
Char
default=''
required=True
No public methods.
line_ids
One2many → test_orm.one2many.line
compute='_compute_line_ids'
domain=[('count', '>', 0)]
readonly=False
store=True
args: 'test_orm.one2many.line', 'container_id'
name
Char
No public methods.
container_id
Many2one → test_orm.one2many
required=True
args: 'test_orm.one2many'
count
Integer
default=1
name
Char
No public methods.
line_ids
One2many → test_orm.order.line
line_short_field_name
Integer
index=True
No public methods.
has_been_rewarded
Char
compute='_compute_has_been_rewarded'
store=True
order_id
Many2one → test_orm.order
ondelete='cascade'
required=True
args: 'test_orm.order'
product
Char
reward
Boolean
short_field_name
Integer
index=True
very_very_very_very_very_long_field_name_1
Integer
index=True
very_very_very_very_very_long_field_name_2
Integer
index=True
unlink(self)
name
Char
string='Name'
No public methods.
amount
Integer
move_id
Many2one → test_orm.move
ondelete='cascade'
required=True
args: 'test_orm.move'
No public methods.
active
Boolean
default=True
birthday
Date
employer_id
Many2one → test_orm.employer
lesson_ids
Many2many → test_orm.lesson
name
Char
No public methods.
activation_date
Date
login
Char
person_id
Many2one → test_orm.person
ondelete='cascade'
required=True
args: 'test_orm.person'
No public methods.
name
Char
ship_ids
Many2many → test_orm.ship
No public methods.
commercial_id
Many2one → res.partner
compute='_compute_commercial_id'
precompute=True
store=True
args: 'res.partner'
line_ids
One2many → test_orm.precompute.line
lower
Char
compute='_compute_names'
precompute=True
store=True
lowup
Char
compute='_compute_lowup'
precompute=True
store=True
name
Char
required=True
partner_id
Many2one → res.partner
size
Integer
compute='_compute_size'
precompute=True
store=True
upper
Char
compute='_compute_names'
precompute=True
store=True
No public methods.
editer
Char
compute='_compute_editer'
precompute=True
readonly=False
store=True
name
Char
reader
Char
compute='_compute_reader'
precompute=True
store=True
setter
Char
compute='_compute_setter'
inverse='_inverse_setter'
precompute=True
store=True
No public methods.
bar
Char
compute='_compute_bar'
precompute=True
readonly=False
store=True
baz
Char
compute='_compute_baz'
precompute=True
readonly=False
store=True
baz2
Char
compute='_compute_baz2'
precompute=True
store=True
foo
Char
No public methods.
name
Char
required=True
parent_id
Many2one → test_orm.precompute
size
Integer
compute='_compute_size'
precompute=True
store=True
No public methods.
amount
Monetary
compute='_compute_amount'
precompute=True
store=True
currency_id
Many2one → res.currency
compute='_compute_currency_id'
precompute=True
store=True
args: 'res.currency'
No public methods.
bar
Char
compute='_compute_bar'
precompute=True
readonly=True
store=True
baz
Char
compute='_compute_baz'
precompute=True
readonly=False
store=True
foo
Char
state
Selection
default='draft'
args: [('draft', 'Draft'), ('confirmed', 'Confirmed')]
No public methods.
name
Char
precompute=True
related='partner_id.name'
required=True
store=True
partner_id
Many2one → res.partner
required=True
args: 'res.partner'
No public methods.
description
Char
translate=True
args: 'Description'
gretel
Char
prefetch='Hansel and Gretel'
args: 'Gretel'
hansel
Integer
prefetch='Hansel and Gretel'
args: 'Hansel'
harry
Integer
prefetch='Harry Potter'
args: 'Harry Potter'
hermione
Char
prefetch='Harry Potter'
args: 'Hermione Granger'
html_description
Html
translate=True
args: 'Styled description'
line_ids
One2many → test_orm.prefetch.line
name
Char
translate=True
args: 'Name'
rare_description
Char
prefetch=False
translate=True
args: 'Rare Description'
rare_html_description
Html
prefetch=False
translate=True
args: 'Rare Styled description'
ron
Float
prefetch='Harry Potter'
args: 'Ron Weasley'
No public methods.
harry
Integer
related='prefetch_id.harry'
store=True
prefetch_id
Many2one → test_orm.prefetch
No public methods.
name
Char
ship_ids
Many2many → test_orm.ship
No public methods.
context_dependent_name
Char
compute='_compute_context_dependent_name'
recursive=True
display_name
Char
recursive=True
store=True
full_name
Char
compute='_compute_full_name'
recursive=True
name
Char
required=True
parent
Many2one → test_orm.recursive
ondelete='cascade'
args: 'test_orm.recursive'
No public methods.
order_id
Many2one → test_orm.recursive.order
task_ids
One2many → test_orm.recursive.task
task_number
Integer
compute='_compute_task_number'
store=True
No public methods.
value
Integer
No public methods.
line_id
Many2one → test_orm.recursive.line
compute='_compute_line_id'
recursive=True
store=True
args: 'test_orm.recursive.line'
value
Integer
No public methods.
children_ids
One2many → test_orm.recursive.tree
display_name
Char
recursive=True
store=True
name
Char
required=True
parent_id
Many2one → test_orm.recursive.tree
ondelete='cascade'
args: 'test_orm.recursive.tree'
No public methods.
foo_bar_id
Many2one
related='foo_id.bar_id'
related_sudo=False
string='Bar'
foo_bar_id_name
Char
related='foo_bar_id.name'
related_sudo=False
string='Bar Name'
foo_bar_ids
Many2many
related='foo_id.bar_ids'
related_sudo=False
foo_bar_name
Char
related='foo_id.bar_id.name'
related_sudo=False
args: 'foo_bar_name'
foo_bar_name_sudo
Char
related='foo_id.bar_id.name'
related_sudo=True
args: 'foo_bar_name_sudo'
foo_bar_sudo_id
Many2one
related='foo_id.bar_id'
related_sudo=True
string='Bar Sudo'
foo_bar_sudo_id_name
Char
related='foo_bar_sudo_id.name'
related_sudo=False
string='Bar Sudo Name'
foo_bar_sudo_ids
Many2many
related='foo_id.bar_ids'
related_sudo=True
string='Bars Sudo'
foo_binary_att
Binary
related='foo_id.binary_att'
related_sudo=False
foo_binary_att_sudo
Binary
related='foo_id.binary_att'
related_sudo=True
string='Binary Att Sudo'
foo_binary_bin
Binary
related='foo_id.binary_bin'
related_sudo=False
foo_binary_bin_sudo
Binary
related='foo_id.binary_bin'
related_sudo=True
string='Binary Bin Sudo'
foo_float_id
Float
related='foo_id.test_float'
foo_foo_ids
One2many
related='foo_id.foo_ids'
related_sudo=False
string='Foo Foos'
foo_foo_sudo_ids
One2many
related='foo_id.foo_ids'
related_sudo=True
string='Foo Foos Sudo'
foo_id
Many2one → test_orm.related_foo
foo_id_bar_name
Char
related='foo_id.bar_name'
related_sudo=False
args: 'foo_id_bar_name'
foo_ids
Many2many → test_orm.related_foo
string='Foos'
args: 'test_orm.related_foo'
foo_name
Char
related='foo_id.name'
related_sudo=False
args: 'foo_name'
foo_name_sudo
Char
related='foo_id.name'
related_sudo=True
args: 'foo_name_sudo'
message
Many2one → test_orm.message
message_currency
Many2one
related='message.author'
string='Message Author'
message_name
Text
related='message.body'
related_sudo=False
string='Message Body'
name
Char
related_name
Char
readonly=False
related='name'
string='A related on Name'
related_related_name
Char
readonly=False
related='related_name'
string='A related on a related on Name'
No public methods.
active
Boolean
default=True
name
Char
No public methods.
bar_alias
Many2one
related='bar_id'
string='bar_alias'
bar_id
Many2one → test_orm.related_bar
bar_ids
Many2many → test_orm.related_bar
string='Bars'
args: 'test_orm.related_bar'
bar_name
Char
related='bar_id.name'
related_sudo=False
args: 'bar_name'
bar_names
Char
related='bar_ids.name'
related_sudo=False
string='Bar Names'
bar_names_sudo
Char
related='bar_ids.name'
related_sudo=True
string='Bar Names Sudo'
binary_att
Binary
binary_bin
Binary
attachment=False
foo_ids
One2many → test_orm.related
string='Foos'
args: 'test_orm.related', 'foo_id'
foo_names
Char
related='foo_ids.name'
related_sudo=False
string='Foo Names'
foo_names_sudo
Char
related='foo_ids.name'
related_sudo=True
string='Foo Names Sudo'
name
Char
test_float
Float
digits='ORM Precision'
No public methods.
base_id
Many2one → test_orm.related
ondelete='cascade'
required=True
args: 'test_orm.related'
No public methods.
html
Html
translate=html_translate
args: 'HTML'
name
Char
translate=True
args: 'Name'
No public methods.
computed_html
Char
compute='_compute_html'
args: 'HTML Computed'
computed_name
Char
compute='_compute_name'
args: 'Name Computed'
html
Html
readonly=False
related='related_id.html'
args: 'HTML Related'
name
Char
readonly=False
related='related_id.name'
args: 'Name Related'
name_en
Char
compute='_compute_name_en'
args: 'Name EN'
related_id
Many2one → test_orm.related_translation_1
string='Parent Model'
args: 'test_orm.related_translation_1'
No public methods.
html
Html
readonly=False
related='related_id.html'
args: 'HTML Related'
name
Char
readonly=False
related='related_id.name'
args: 'Name Related'
related_id
Many2one → test_orm.related_translation_2
string='Parent Model'
args: 'test_orm.related_translation_2'
No public methods.
bar
Many2one → res.country
required=True
args: 'res.country'
foo
Many2one → res.currency
ondelete='cascade'
required=True
args: 'res.currency'
No public methods.
bar
Many2one → res.country
required=True
args: 'res.country'
foo
Many2one → res.currency
ondelete='restrict'
required=True
args: 'res.currency'
No public methods.
other
Selection
state
Selection
No public methods.
end
Integer
compute='_compute_start_end'
readonly=False
store=True
name
Char
compute='_compute_name'
readonly=False
store=True
start
Integer
compute='_compute_start_end'
readonly=False
store=True
No public methods.
name
Char
pirate_ids
Many2many → test_orm.pirate
prisoner_ids
Many2many → test_orm.prisoner
No public methods.
state
Selection
No public methods.
member_ids
One2many → test_orm.team.member
name
Char
parent_id
Many2one → test_orm.team
No public methods.
name
Char
parent_id
Many2one → test_orm.team
related='team_id.parent_id'
args: 'test_orm.team'
team_id
Many2one → test_orm.team
No public methods.
No new fields.
Public methods (0)No public methods.
middle_ids
One2many → test_orm.trigger.middle
right_id
Many2one
related='middle_ids.right_id'
store=True
No public methods.
left_id
Many2one → test_orm.trigger.left
required=True
args: 'test_orm.trigger.left'
right_id
Many2one → test_orm.trigger.right
required=True
args: 'test_orm.trigger.right'
No public methods.
left_ids
One2many → test_orm.trigger.left
left_size
Integer
compute='_compute_left_size'
store=True
No public methods.
child_ids
One2many → test_orm.unsearchable.o2m
name
Char
parent_id
Many2one → test_orm.unsearchable.o2m
compute='_compute_parent_id'
store=False
args: 'test_orm.unsearchable.o2m'
stored_parent_id
Many2one → test_orm.unsearchable.o2m
store=True
args: 'test_orm.unsearchable.o2m'
No public methods.
group_count
Integer
compute='_compute_group_count'
store=True
group_ids
Many2many → test_orm.group
name
Char
No public methods.
name
Char
No public methods.
property_eggs
Many2one → test_performance.eggs
company_dependent=True
string='Eggs'
args: 'test_performance.eggs'
No public methods.
computed_value
Float
compute='_computed_value'
indirect_computed_value
Float
compute='_indirect_computed_value'
line_ids
One2many → test_performance.line
name
Char
partner_id
Many2one → res.partner
string='Customer'
args: 'res.partner'
tag_ids
Many2many → test_performance.tag
total
Integer
compute='_total'
store=True
value
Integer
default=0
value_ctx
Float
compute='_value_ctx'
value_pc
Float
compute='_value_pc'
store=True
No public methods.
name
Char
No public methods.
base_id
Many2one → test_performance.base
ondelete='cascade'
required=True
args: 'test_performance.base'
value
Integer
No public methods.
value
Integer
default=0
required=True
value_null_by_default
Integer
value_plus_one
Integer
compute='_value_plus_one'
required=True
store=True
No public methods.
active
Boolean
default=True
child_ids
One2many → test_performance.simple.minded
name
Char
parent_id
Many2one → test_performance.simple.minded
No public methods.
name
Char
No public methods.