Author: |
Camptocamp, Odoo Community Association (OCA) |
License: |
AGPL-3 |
Branch: |
13.0-mig-request_auditor |
Repository: |
acsone/server-tools |
Dependencies: |
base |
Languages: |
HTML (383, 85.5%),
Python (20, 4.5%),
and
reStructuredText (45, 10.0%) |
Other branches: |
10.0-backport-base_m2m_custom_field,
12.0,
12.0-asw_master,
12.0-backport-shopinvader_customer_multi_user-len,
12.0-jsonifyfull-len,
12.0-jsonifystored-len,
12.0-jsonifystoredsimple-len,
12.0-partition-len,
12.0-safetranlations-len,
12.0-trn_master,
12.0-xmlify-len,
13.0,
13.0-bp-jsonifier-ape,
13.0-custom_sequence_code,
13.0-fix-cache-base_jsonify-ape,
13.0-fix-precommit-ape,
13.0-jsonifyfull-len,
13.0-jsonifystored-len,
13.0-jsonifystorednew-len,
13.0-mig_auto_export,
13.0-partition-len,
13.0-rlf_master,
13.0-session_db-sbi,
13.0-slg_master,
13.0-update-dotfiles-sbi,
13.0-xmlify-len,
14-fix-mc-base_tech_user-dro,
14.0,
14.0-mass_mailing_mail_server-mle,
14.0-session_db-sbi,
16.0,
16.0-base_time_window-sbj,
16.0-mig-base_m2m_custom_field-dro,
16.0-mig-base_sparse_field_list_support-hda,
16.0-session_db-sbi,
and
pre-commit-cache-sbi |
Other repositories: |
001101/server-tools,
0yik/server-tools,
AITIC/server-tools,
AMhadhbi/server-tools,
Albin-John/server-tools,
Artielkami/server-tools,
CB-Gran-Canaria/server-tools,
Callino/server-tools,
Change2improve/server-tools,
ComitorDevTeam/server-tools,
Comunitea/server-tools,
Digital5-Odoo/server-tools,
Dobtor-OCA/server-tools,
DucTruongKomit/server-tools,
DulingLai/server-tools,
ERPLibre/server-tools,
EssentNovaTeam/server-tools,
FernandoRomera/server-tools,
ForgeFlow/server-tools,
Gabinete-Digital/server-tools,
GleydsonHudson/server-tools,
Ingeos/server-tools,
Intesco2-0/server-tools,
IvanShirokikh/server-tools,
Jarsa/server-tools,
JuaniFreedoo/server-tools,
KonaERP/server-tools,
LevelPrime/server-tools,
LourenzoH/server-tools,
NL66278/server-tools,
OCA-MUK/server-tools,
OCA/server-tools,
OdooIndonesia/server-tools,
Othniel1796/server-tools,
QubiQ/server-tools,
Rad0van/server-tools,
SanteLibre/server-tools,
ScopeaFrance/server-tools,
SequarSrl/server-tools,
SeuMarco/server-tools,
SimoRubi/server-tools,
SimoneVagile/server-tools,
StefanRijnhart/server-tools,
Syci-Consulting/server-tools,
TRESCLOUD/server-tools,
Tecnativa/server-tools,
TimLai125/server-tools,
UnknownInfo/server-tools,
VanMoof/server-tools,
Vauxoo/server-tools,
YannickB/server-tools,
YogeshMahera-SerpentCS/server-tools,
aaltinisik/server-tools,
adhoc-dev/server-tools,
ajayjaviya/server-tools,
akretion/server-tools,
albertvimlet/server-tools,
alfadil/server-tools,
anhvu-sg/server-tools,
anodino-dev/server-tools,
ansinaesmejor/server-tools,
antilhue/server-tools,
area-scm/server-tools,
aurestic/server-tools,
avoinsystems/server-tools,
azmeuk/server-tools,
bangil0/server-tools,
blooparksystems/server-tools,
bmya/server-tools,
brain-tec/server-tools,
camptocamp/server-tools,
captivea-dcr/server-tools,
cheikhousy/server-tools,
connect-to-ak/server-tools,
coopiteasy/server-tools,
crnd-inc/server-tools,
dalal-intellisoft/server-tools,
dani-xtendoo/server-tools,
davidwah/server-tools,
ddico/server-tools,
dennybiasiolli/server-tools,
diggy128/server-tools,
dipakthapaofficial/server-tools,
druidoo-dev/server-tools,
eLBati/server-tools,
ecosoft-odoo/server-tools,
emagdalenaC2i/server-tools,
etobella/server-tools,
eversatis/server-tools,
ewac-nl/server-tools,
factorlibre/server-tools,
fmdl/server-tools,
focusate/oca-server-tools,
gab-net/server-tools,
gitguohao/server-tools,
grindtildeath/server-tools,
guewen/server-tools,
gurneyalex/server-tools,
hbrunn/server-tools,
hibou-io/oca-server-tools,
i-vyshnevska/server-tools,
ideaspositivas-group/server-tools,
igallart/server-tools,
initOS/server-tools,
insscn/server-tools,
invitu/server-tools,
ip-candres/server-tools,
jaballate/server-tools,
jacky82669513/server-tools,
janverb/server-tools,
jeanpaul-mupagasi/server-tools,
kait-avalah/server-tools,
kittiu/server-tools,
kmee/server-tools,
kos94ok-3D/server-tools,
leemannd/server-tools,
legalsylvain/server-tools,
lideritjnma/server-tools,
lilotter45/server-tools,
lincersolucoes/oca-server-tools,
lonelyleaves/server-tools,
merchise-autrement/server-tools,
modoolar/server-tools,
multidadosti-erp/server-tools,
nehaksolves/server-tools,
newtratip/server-tools,
nilshamerlinck/server-tools,
njeudy/server-tools,
ntsirintanis/server-tools,
nuobit/server-tools,
omalbastin/server-tools,
open2bizz/server-tools,
petrus-v/server-tools,
praxigento/oca-server-tools,
programadorzurita/server-tools,
raizs/server-tools,
rdeheele/server-tools,
robertsvx27/server-tools,
romendil/server-tools,
rsullivan2704/server-tools,
rudisulistyo/server-tools,
rven/server-tools,
sanube/server-tools,
sebalix/server-tools,
sergiocorato/server-tools,
simahawk/server-tools,
sodexis/server-tools,
solvosci/server-tools,
ssaid/server-tools,
steingabelgaard/server-tools,
sunflowerit/server-tools,
sunshineLhj/server-tools,
suprielfath/server-tools,
swbs-co/server-tools,
sysprocesarcastro/server-tools,
tafaRU/server-tools,
takinobori/oca-server-tools,
tarteo/server-tools,
tegin/server-tools,
tirma-sa/server-tools,
tmasson/server-tools,
tongjiou/server-tools,
tonygalmiche/server-tools,
trevi-software/server-tools,
trobz/server-tools,
unitek-solusi/OCA-server-tools,
ursais/server-tools,
valmarnet/server-tools,
ventor-tech/server-tools,
versada/server-tools,
victoralmau/server-tools,
vmelnych/server-tools,
xcgd/server-tools,
ygdmxy/server-tools,
ypapouin/server-tools,
yuzhengxing/server-tools,
zarumaru/server-tools,
and
zhaohuaw/server-tools |
<h1 class="title">Base Many2many Custom Field</h1>
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/server-tools/tree/13.0/base_m2m_custom_field"><img alt="OCA/server-tools" src="https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/server-tools-13-0/server-tools-13-0-base_m2m_custom_field"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/149/13.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
<p>This module adds a new Many2many custom field with a <cite>create_table</cite> attribute.</p>
<p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><a class="reference internal" href="#usage" id="id1">Usage</a></li>
<li><a class="reference internal" href="#bug-tracker" id="id2">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="id3">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="id4">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="id5">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="id6">Maintainers</a></li>
</ul>
</li>
</ul>
</div>
<a name="usage"></a>
<h2><a class="toc-backref" href="#id1">Usage</a></h2>
<p>Many2manyCustom field is useful when a direct access to the relational table
is needed, for example to be editable in a dedicated tree view.</p>
<p>Let's consider following models:</p>
<pre>
<code lang="python">class MyModelA(models.Model):
_name = 'my.model.a'
my_model_b_ids = fields.Many2manyCustom(
'my.model.b',
'my_model_a_b_rel',
'my_model_a_id',
'my_model_b_id',
create_table=False,
)
class MyModelB(models.Model):
_name = 'my.model.b'
my_model_a_ids = fields.Many2manyCustom(
'my.model.a',
'my_model_a_b_rel',
'my_model_b_id',
'my_model_a_id',
create_table=False,
)
class MyModelABRel(models.Model):
_name = 'my.model.a.b.rel'
my_model_a_id = fields.Many2one(
'my.model.a',
required=True,
index=True, # Index is mandatory here
)
my_model_b_id = fields.Many2one(
'my.model.b',
required=True,
index=True, # Index is mandatory here
)</code>
</pre>
<p>By setting <cite>create_table=False</cite> on the Many2manyCustom field, and using the
relational table name, as <cite>_name</cite> for the relational model, we're able to
define a dedicated tree view for <cite>my.model.a.b.rel</cite>.</p>
<pre>
<code lang="xml"><record id="my_model_a_b_rel_tree_view" model="ir.ui.view">
<field name="name">my.model.a.b.rel.tree.view</field>
<field name="model">my.model.a.b.rel</field>
<field name="arch" type="xml">
<tree editable="top">
<field name="my_model_a_id" />
<field name="my_model_b_id" />
</tree>
</field>
</record></code>
</pre>
<a name="bug-tracker"></a>
<h2><a class="toc-backref" href="#id2">Bug Tracker</a></h2>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/server-tools/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/server-tools/issues/new?body=module:%20base_m2m_custom_field%0Aversion:%2013.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
<a name="credits"></a>
<h2><a class="toc-backref" href="#id3">Credits</a></h2>
<a name="authors"></a>
<h3><a class="toc-backref" href="#id4">Authors</a></h3>
<ul class="simple">
<li>Camptocamp</li>
</ul>
<a name="contributors"></a>
<h3><a class="toc-backref" href="#id5">Contributors</a></h3>
<ul class="simple">
<li>Akim Juillerat <<a class="reference external" href="mailto:akim.juillerat@camptocamp.com">akim.juillerat@camptocamp.com</a>></li>
</ul>
<a name="maintainers"></a>
<h3><a class="toc-backref" href="#id6">Maintainers</a></h3>
<p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/server-tools/tree/13.0/base_m2m_custom_field">OCA/server-tools</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>