===========================
Base Many2many Custom Field
===========================
.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github
:target: https://github.com/OCA/server-tools/tree/13.0/base_m2m_custom_field
:alt: OCA/server-tools
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/server-tools-13-0/server-tools-13-0-base_m2m_custom_field
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/149/13.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
This module adds a new Many2many custom field with a `create_table` attribute.
**Table of contents**
.. contents::
:local:
Usage
=====
Many2manyCustom field is useful when a direct access to the relational table
is needed, for example to be editable in a dedicated tree view.
Let's consider following models:
.. code-block:: 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
)
By setting `create_table=False` on the Many2manyCustom field, and using the
relational table name, as `_name` for the relational model, we're able to
define a dedicated tree view for `my.model.a.b.rel`.
.. code-block:: 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>
Bug Tracker
===========
Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-tools/issues>`_.
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
`feedback <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**>`_.
Do not contact contributors directly about support or help with technical issues.
Credits
=======
Authors
~~~~~~~
* Camptocamp
Contributors
~~~~~~~~~~~~
* Akim Juillerat <akim.juillerat@camptocamp.com>
Maintainers
~~~~~~~~~~~
This module is maintained by the OCA.
.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org
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.
This module is part of the `OCA/server-tools <https://github.com/OCA/server-tools/tree/13.0/base_m2m_custom_field>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
Raw data
{
"_id": null,
"home_page": "https://github.com/OCA/server-tools",
"name": "odoo13-addon-base-m2m-custom-field",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.5",
"maintainer_email": "",
"keywords": "",
"author": "Camptocamp, Odoo Community Association (OCA)",
"author_email": "support@odoo-community.org",
"download_url": "",
"platform": null,
"description": "===========================\nBase Many2many Custom Field\n===========================\n\n.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n !! This file is generated by oca-gen-addon-readme !!\n !! changes will be overwritten. !!\n !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n\n.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png\n :target: https://odoo-community.org/page/development-status\n :alt: Beta\n.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png\n :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html\n :alt: License: AGPL-3\n.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github\n :target: https://github.com/OCA/server-tools/tree/13.0/base_m2m_custom_field\n :alt: OCA/server-tools\n.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png\n :target: https://translation.odoo-community.org/projects/server-tools-13-0/server-tools-13-0-base_m2m_custom_field\n :alt: Translate me on Weblate\n.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png\n :target: https://runbot.odoo-community.org/runbot/149/13.0\n :alt: Try me on Runbot\n\n|badge1| |badge2| |badge3| |badge4| |badge5| \n\nThis module adds a new Many2many custom field with a `create_table` attribute.\n\n**Table of contents**\n\n.. contents::\n :local:\n\nUsage\n=====\n\nMany2manyCustom field is useful when a direct access to the relational table\nis needed, for example to be editable in a dedicated tree view.\n\nLet's consider following models:\n\n.. code-block:: python\n\n class MyModelA(models.Model):\n\n _name = 'my.model.a'\n\n my_model_b_ids = fields.Many2manyCustom(\n 'my.model.b',\n 'my_model_a_b_rel',\n 'my_model_a_id',\n 'my_model_b_id',\n create_table=False,\n )\n\n\n class MyModelB(models.Model):\n\n _name = 'my.model.b'\n\n my_model_a_ids = fields.Many2manyCustom(\n 'my.model.a',\n 'my_model_a_b_rel',\n 'my_model_b_id',\n 'my_model_a_id',\n create_table=False,\n )\n\n\n class MyModelABRel(models.Model):\n\n _name = 'my.model.a.b.rel'\n\n my_model_a_id = fields.Many2one(\n 'my.model.a',\n required=True,\n index=True, # Index is mandatory here\n )\n my_model_b_id = fields.Many2one(\n 'my.model.b',\n required=True,\n index=True, # Index is mandatory here\n )\n\n\nBy setting `create_table=False` on the Many2manyCustom field, and using the\nrelational table name, as `_name` for the relational model, we're able to\ndefine a dedicated tree view for `my.model.a.b.rel`.\n\n.. code-block:: xml\n\n <record id=\"my_model_a_b_rel_tree_view\" model=\"ir.ui.view\">\n <field name=\"name\">my.model.a.b.rel.tree.view</field>\n <field name=\"model\">my.model.a.b.rel</field>\n <field name=\"arch\" type=\"xml\">\n <tree editable=\"top\">\n <field name=\"my_model_a_id\" />\n <field name=\"my_model_b_id\" />\n </tree>\n </field>\n </record>\n\nBug Tracker\n===========\n\nBugs are tracked on `GitHub Issues <https://github.com/OCA/server-tools/issues>`_.\nIn case of trouble, please check there if your issue has already been reported.\nIf you spotted it first, help us smashing it by providing a detailed and welcomed\n`feedback <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**>`_.\n\nDo not contact contributors directly about support or help with technical issues.\n\nCredits\n=======\n\nAuthors\n~~~~~~~\n\n* Camptocamp\n\nContributors\n~~~~~~~~~~~~\n\n* Akim Juillerat <akim.juillerat@camptocamp.com>\n\nMaintainers\n~~~~~~~~~~~\n\nThis module is maintained by the OCA.\n\n.. image:: https://odoo-community.org/logo.png\n :alt: Odoo Community Association\n :target: https://odoo-community.org\n\nOCA, or the Odoo Community Association, is a nonprofit organization whose\nmission is to support the collaborative development of Odoo features and\npromote its widespread use.\n\nThis module is part of the `OCA/server-tools <https://github.com/OCA/server-tools/tree/13.0/base_m2m_custom_field>`_ project on GitHub.\n\nYou are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.\n\n\n",
"bugtrack_url": null,
"license": "AGPL-3",
"summary": "Customizations of Many2many",
"version": "13.0.1.0.1",
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6d68b1630d9f9c7f3b2c589cac35d5a247b5955d59675fae9dc00358c954081a",
"md5": "52f0bf6bca898e597bd3fd3b00bc6dac",
"sha256": "8592751f62b094a8ebf5d29e9bb969ccc8ed7f98b97456ce8ad3b1708396c73e"
},
"downloads": -1,
"filename": "odoo13_addon_base_m2m_custom_field-13.0.1.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "52f0bf6bca898e597bd3fd3b00bc6dac",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 22207,
"upload_time": "2023-01-15T12:00:00",
"upload_time_iso_8601": "2023-01-15T12:00:00.591739Z",
"url": "https://files.pythonhosted.org/packages/6d/68/b1630d9f9c7f3b2c589cac35d5a247b5955d59675fae9dc00358c954081a/odoo13_addon_base_m2m_custom_field-13.0.1.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-01-15 12:00:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "OCA",
"github_project": "server-tools",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "odoo13-addon-base-m2m-custom-field"
}