| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/storage |
| GIT | |
| GIT | https://github.com/OCA/storage.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/storage/tree/17.0/fs_base_multi_media |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion, ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion, ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | Weblate, OCA-git-bot, oca-ci, chien |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/storage |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:20:08 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/server-env: - server_environment OCA/storage: - fs_file - fs_attachment - fs_storage odoo/odoo: - base - base_sparse_field |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES |
fsspec>=2025.3.0 python_slugify fsspec>=2024.5.0 |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This addon allows you to store media file into external filesystem from
odoo. It also provides is a technical mixin model to ease the creation
of other models that need to be linked to multiple medias stored into
external filesystems.
The models provided by this addon are:
- `fs.media`: a model that stores a reference to an media stored into an
external filesystem.
- `fs.media.relation.mixin`: an abstract model that can be used to as
base class for models created to store an media linked to a model.
This abstract model defines fields and methods to transparently handle
2 cases:
- the media is specific to the model.
- the media is shared between multiple models and therefore is a
`fs.media` instance linked to the mixin. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
fs_media_form_view |
fs.media.form | fs.media | form | New |
fs_media_relation_mixin_form_view |
fs.media.relation.mixin.form | fs.media.relation.mixin | form | New |
fs_media_relation_mixin_tree_view |
fs.media.relation.mixin.tree | fs.media.relation.mixin | tree | New |
fs_media_search_view |
fs.media.search | fs.media | search | New |
fs_media_tree_view |
fs.media.tree | fs.media | tree | New |
fs_media_type_view_form |
fs.media.type | form | New | |
fs_media_type_view_search |
fs.media.type | search | New | |
fs_media_type_view_tree |
fs.media.type | tree | New |
media_type_id
Many2one → fs.media.type
mimetype
Char
compute='_compute_mimetype'
store=True
name
Char
compute='_compute_name'
index=True
store=True
No public methods.
link_existing
Boolean
default=False
string='Link existing media'
media_id
Many2one → fs.media
comodel_name='fs.media'
string='Linked media'
media_type_id
Many2one → fs.media.type
compute='_compute_media'
store=False
args: 'fs.media.type'
mimetype
Char
compute='_compute_mimetype'
store=True
name
Char
compute='_compute_name'
index=True
store=True
sequence
Integer
specific_media_type_id
Many2one → fs.media.type
create(self, vals_list)
write(self, vals)
code
Char
name
Char
required=True
translate=True
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/storage |
| GIT | |
| GIT | https://github.com/OCA/storage.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/storage/tree/16.0/fs_base_multi_media |
| VERSION | |
| VERSION | 1.0.2 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion, ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion, ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | Laurent Mignon (ACSONE), Weblate, OCA-git-bot, oca-ci |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/storage |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:53:52 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/storage: - fs_file - fs_attachment - fs_storage odoo/odoo: - base - base_sparse_field |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES |
fsspec>=2025.3.0 python_slugify fsspec>=2024.5.0 |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
fs_media_form_view |
fs.media.form | fs.media | form | New |
fs_media_relation_mixin_form_view |
fs.media.relation.mixin.form | fs.media.relation.mixin | form | New |
fs_media_relation_mixin_tree_view |
fs.media.relation.mixin.tree | fs.media.relation.mixin | tree | New |
fs_media_search_view |
fs.media.search | fs.media | search | New |
fs_media_tree_view |
fs.media.tree | fs.media | tree | New |
fs_media_type_view_form |
fs.media.type | form | New | |
fs_media_type_view_search |
fs.media.type | search | New | |
fs_media_type_view_tree |
fs.media.type | tree | New |
media_type_id
Many2one → fs.media.type
mimetype
Char
compute='_compute_mimetype'
store=True
name
Char
compute='_compute_name'
index=True
store=True
No public methods.
link_existing
Boolean
default=False
string='Link existing media'
media_id
Many2one → fs.media
comodel_name='fs.media'
string='Linked media'
media_type_id
Many2one → fs.media.type
compute='_compute_media'
store=False
args: 'fs.media.type'
mimetype
Char
compute='_compute_mimetype'
store=True
name
Char
compute='_compute_name'
index=True
store=True
sequence
Integer
specific_media_type_id
Many2one → fs.media.type
create(self, vals_list)
write(self, vals)
code
Char
name
Char
required=True
translate=True
No public methods.