===========================
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/14.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-14-0/server-tools-14-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/14.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:%2014.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/14.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": "odoo14-addon-base-m2m-custom-field",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "",
"author": "Camptocamp, Odoo Community Association (OCA)",
"author_email": "support@odoo-community.org",
"download_url": "",
"platform": "",
"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/14.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-14-0/server-tools-14-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/14.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:%2014.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/14.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": "14.0.1.1.0",
"project_urls": {
"Homepage": "https://github.com/OCA/server-tools"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0feacf4adf8729ea5c68349a5d47690f63478201813b559ecfdb3ed67a0419e7",
"md5": "f6158232d2721e8a599c92a0f8718e72",
"sha256": "13061ca0a14860e03bb433c6163937c6835ea6f1d3122c522185cdc7fb1304a1"
},
"downloads": -1,
"filename": "odoo14_addon_base_m2m_custom_field-14.0.1.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f6158232d2721e8a599c92a0f8718e72",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 22195,
"upload_time": "2021-02-10T06:21:49",
"upload_time_iso_8601": "2021-02-10T06:21:49.473132Z",
"url": "https://files.pythonhosted.org/packages/0f/ea/cf4adf8729ea5c68349a5d47690f63478201813b559ecfdb3ed67a0419e7/odoo14_addon_base_m2m_custom_field-14.0.1.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2021-02-10 06:21:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "OCA",
"github_project": "server-tools",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "acme",
"specs": []
},
{
"name": "astor",
"specs": []
},
{
"name": "cryptography",
"specs": []
},
{
"name": "dataclasses",
"specs": []
},
{
"name": "dnspython",
"specs": []
},
{
"name": "josepy",
"specs": []
},
{
"name": "mako",
"specs": []
},
{
"name": "odoo_test_helper",
"specs": []
},
{
"name": "odoorpc",
"specs": []
},
{
"name": "openpyxl",
"specs": []
},
{
"name": "openupgradelib",
"specs": []
},
{
"name": "pygount",
"specs": []
},
{
"name": "pysftp",
"specs": []
},
{
"name": "sentry_sdk",
"specs": [
[
"<=",
"1.9.0"
]
]
},
{
"name": "unidecode",
"specs": []
}
],
"lcname": "odoo14-addon-base-m2m-custom-field"
}