Hii,
Here is updated code please try this
Python Model (models/my_event.py)
from odoo import models, fields
class MyEvent(models.Model):
_name = 'mymodule.my_event'
_description = 'My Event'
name = fields.Char("Title", required=True)
date_start = fields.Datetime("Start", required=True)
date_stop = fields.Datetime("End", required=True)
priority = fields.Selection([
('low', 'Low'),
('normal', 'Normal'),
('high', 'High')
], string="Priority", default='normal')
XML View File (views/my_event_views.xml)
<odoo>
<!-- Calendar View -->
<record id="view_my_event_calendar" model="ir.ui.view">
<field name="name">my_event.calendar</field>
<field name="model">mymodule.my_event</field>
<field name="arch" type="xml">
<calendar
string="My Events"
date_start="date_start"
date_stop="date_stop"
color="priority"
event_open_popup="true"
>
<field name="name"/>
</calendar>
</field>
</record>
<!-- Tree View -->
<record id="view_my_event_tree" model="ir.ui.view">
<field name="name">my_event.tree</field>
<field name="model">mymodule.my_event</field>
<field name="arch" type="xml">
<tree>
<field name="name"/>
<field name="date_start"/>
<field name="date_stop"/>
<field name="priority"/>
</tree>
</field>
</record>
<!-- Form View -->
<record id="view_my_event_form" model="ir.ui.view">
<field name="name">my_event.form</field>
<field name="model">mymodule.my_event</field>
<field name="arch" type="xml">
<form>
<sheet>
<group>
<field name="name"/>
<field name="date_start"/>
<field name="date_stop"/>
<field name="priority"/>
</group>
</sheet>
</form>
</field>
</record>
<!-- Action -->
<record id="action_my_event" model="ir.actions.act_window">
<field name="name">My Events</field>
<field name="res_model">mymodule.my_event</field>
<field name="view_mode">calendar,tree,form</field>
<field name="view_id" ref="view_my_event_calendar"/>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create your first event
</p>
</field>
</record>
<!-- Menu -->
<menuitem id="menu_my_event_root" name="My Module"/>
<menuitem id="menu_my_event_main" name="My Events"
parent="menu_my_event_root"
action="action_my_event"/>
</ odoo >
Manifest (__manifest__.py)
Ensure you include the XML file in data:
{
'name': 'My Custom Calendar Module',
'version': '1.0',
'depends': ['base'],
'data': [
'views/my_event_views.xml',
],
'application': True,
}
I hope it is of full use.