47 lines
1.5 KiB
Python
47 lines
1.5 KiB
Python
# -*- coding: utf-8 -*-
|
|
from odoo import fields, models
|
|
|
|
|
|
class SourceModel(models.Model):
|
|
_name = 'test_search_panel.source_model'
|
|
_description = 'Source Model'
|
|
|
|
name = fields.Char('Name', required=True)
|
|
state = fields.Selection([('a', "A"), ('b', "B")])
|
|
folder_id = fields.Many2one('test_search_panel.category_target_model')
|
|
categ_id = fields.Many2one(
|
|
'test_search_panel.category_target_model_no_parent_name')
|
|
tag_ids = fields.Many2many(
|
|
'test_search_panel.filter_target_model', 'rel_table', string="Tags")
|
|
tag_id = fields.Many2one('test_search_panel.filter_target_model', string="Tag")
|
|
|
|
|
|
class CategoryTargetModel(models.Model):
|
|
_name = 'test_search_panel.category_target_model'
|
|
_order = 'name'
|
|
_description = 'Category target model'
|
|
_parent_name = 'parent_name_id'
|
|
|
|
name = fields.Char('Name', required=True)
|
|
parent_name_id = fields.Many2one('test_search_panel.category_target_model')
|
|
|
|
|
|
class CategoryTargetModelNoParentName(models.Model):
|
|
_name = 'test_search_panel.category_target_model_no_parent_name'
|
|
_order = 'id desc'
|
|
_description = 'Category target model'
|
|
|
|
name = fields.Char('Name', required=True)
|
|
|
|
|
|
class FilterTargetModel(models.Model):
|
|
_name = 'test_search_panel.filter_target_model'
|
|
_order = 'name'
|
|
_description = 'Filter target model'
|
|
|
|
name = fields.Char('Name', required=True)
|
|
status = fields.Selection(
|
|
[('cool', "Cool"), ('unknown', 'Unknown')])
|
|
color = fields.Char()
|
|
folder_id = fields.Many2one('test_search_panel.category_target_model')
|