TIP: You can type at any time to perform a new search.
Caldav and Carddav support
base_dav · OCA/server-backend
- Repository
- OCA/server-backend · module folder · Try on Runboat
- Module version
- 1.0.0
- Category
- Extra Tools
- Folder size
- 0.07 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- None
- Last tracking update
- 2026-08-07 07:25:00
- Authors
- Odoo Community Association (OCA), Therp BV, initOS GmbH
- Maintainers
- Odoo Community Association (OCA), Therp BV, initOS GmbH
- Committers
- GitHub, fkantelberg, OCA-git-bot, oca-travis
- Odoo dependencies
-
odoo/odoo:- base
- Python dependencies
- radicale
- System dependencies
- None
- Required by
- calendar_dav
- Description
Code Analysis ⓘ
Views touched (4)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_dav_collection_form |
dav.collection | form | New | |
view_dav_collection_mapping_form |
dav.collection.field_mapping | form | New | |
view_dav_collection_mapping_tree |
dav.collection.field_mapping | tree | New | |
view_dav_collection_tree |
dav.collection | tree | New |
HTTP endpoints (2)
| Route(s) | Handler | Auth | Type | Methods | Flags |
|---|---|---|---|---|---|
| (inherited route override) | Main.handle_dav_request |
none | http | ALL | csrf off |
/.well-known/carddav, /.well-known/caldav, /.well-known/webdav |
Main.handle_well_known_request |
none | http | ALL | csrf off |
Models touched (2)
New fields (9)
-
dav_typeSelectiondefault='calendar'required=Truestring='Type' args: [('calendar', 'Calendar'), ('addressbook', 'Addressbook'), ('files', 'Files')] -
domainChardefault='[]'required=True -
field_mapping_idsOne2many → dav.collection.field_mappingstring='Field mappings' args: 'dav.collection.field_mapping', 'collection_id' -
field_uuidMany2one → ir.model.fieldsargs: 'ir.model.fields' -
model_idMany2one → ir.modeldomain=[('transient', '=', False)]required=Truestring='Model' args: 'ir.model' -
nameCharrequired=True -
rightsSelectiondefault='owner_only'required=True args: [('owner_only', 'Owner Only'), ('owner_write_only', 'Owner Write Only'), ('authenticated', 'Authenticated')] -
tagCharcompute='_compute_tag' -
urlCharcompute='_compute_url'
-
dav_delete(self, collection, components)@api.multi -
dav_get(self, collection, href)@api.multi -
dav_list(self, collection, path_components)@api.multi -
dav_upload(self, collection, href, item)@api.multi -
eval(self)@api.multi -
from_vobject(self, item)@api.multi -
get_record(self, components)@api.multi -
to_vobject(self, record)@api.multi
New fields (7)
-
collection_idMany2one → dav.collectionondelete='cascade'required=True args: 'dav.collection' -
export_codeTexthelp='Code to export the value to a vobject. Use the variable result for the output of the value and record as input' -
field_idMany2one → ir.model.fieldshelp='Field of the model the values are mapped to'required=True args: 'ir.model.fields' -
import_codeTexthelp='Code to import the value from a vobject. Use the variable result for the output of the value and item as input' -
mapping_typeSelectiondefault='simple'required=True args: [('simple', 'Simple'), ('code', 'Code')] -
model_idMany2one → ir.modelrelated='collection_id.model_id' args: 'ir.model' -
nameCharhelp='Attribute name in the vobject'required=True
-
from_vobject(self, child)@api.multi -
to_vobject(self, record)@api.multi
- Status
- Open migration PR — not merged yet for this version
- CI status
- no CI data
- Open since
- 1141 days ago
- Last activity
- 950 days ago
- Repository
- OCA/server-backend
- Pull request
- [12.0][MIG] base_dav: migration to 12.0 (#226)
- Status
- Open migration PR — not merged yet for this version
- CI status
- checks failing
- Open since
- 883 days ago
- Last activity
- 167 days ago
- Repository
- OCA/server-backend
- Pull request
- [MIG] base_dav: Migration to 17.0 (#276)