Полагаю, я должен быть примерно таким:
#instead on my.countries you can use res.country also
class Countries(models.Model):
_name = 'my.countries'
name = fields.Char()
class Towns(models.Model):
_name = 'my.towns'
name = fields.Char()
country_id = fields.Many2one('my.countries', string='Country')
class MyModule(models.Model):
_name = 'my.module'
country_id = fields.Many2one('my.countries', string='Country')
town_id = fields.Many2one('my.towns', string='Town', domain=[('country_id', '=', country_id)])