Odoo Help


Creating a constrains for showing Error message

on 8/21/15, 11:27 AM 1,194 views

i was created a module with the constrains for showing warning message. I was followed odoo documentation, the thing is that user cant book the same room at same date.But after my interating code the warning message shows, even i cant able to book the room on different dates.Is it possible to do by two variables passes?? Please give me a solution.

code for constrain is:-

def _check_date(self, cr, uid,ids, context=None):

record = self.search(cr, uid,[('room_id', '=', self.room_id.id),('start', '=', self.start)])

if record:

return False

return True

_constraints = [(_check_date, 'Room already booked',['room_id','start'])]

--Ahmed M.Elmubarak--

Ahmed M.Elmubarak
On 8/22/15, 3:29 AM


instead you can use _sql_constraints  e.g:

_sql_constraints = [

('room_date_unique', 'unique(room_id, start)', 'Configuration Error!'),


I hope it'll help




| 4 4 6
Hyderabad, India

On 8/24/15, 5:54 AM

Logicious, Please check your start field is just a "date" field not "datetime" , since in datetime field every date will be different from other with atleast some millisecond. Hope it helps

On 8/24/15, 1:01 AM

@Ahmed and pawan : i am sorry guys.... its working when the 'datetime'  changed to 'date' . But i need 'datetime' as it is. how could i make a constraint for this? Please help me guys

If you need the room_id & start_date to be unique 'no same room for the same start date' you can simply add _sql_constraints, you can check this part: https://github.com/odoo/odoo/blob/8.0/addons/account/account.py#L579-L581

Ahmed M.Elmubarak
on 8/24/15, 2:42 AM

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

0 follower(s)


Asked: 8/21/15, 11:27 AM
Seen: 1194 times
Last updated: 9/24/15, 12:54 AM