Odoo Help

2

Selection Field default value

By
Mathias Colpaert
on 11/11/14, 8:04 AM 17,350 views

How can you assign a default value to a selection field?

 

auType = fields.Selection([ ('type1', 'Type 1'),('type2', 'Type 2'),],'Type')

5

Maniganda

--Maniganda--

1098
| 6 8 7
Bangalore, India
--Maniganda--
Maniganda
On 11/11/14, 8:12 AM

Hi you can use default attribute in the fields

auType = fields.Selection([ ('type1', 'Type 1'),('type2', 'Type 2'),],'Type', default='type1')

1

René Schuster

--René Schuster--
1708
| 5 6 8
Weinheim, Germany
--René Schuster--

Challenge Everything!

René Schuster
On 11/11/14, 8:19 AM

For Version 7:

As for all fields you can define a default value for selection fields in the _default dictionary of your class.

_default = {
     'auType' = 'type1',
}

Use a key_value of the tuple of tuples of string defined in your field as default value or use any valid function:

def _get_default_type(cr, uid, context=None):
     return random.choiche(['type1', 'type2']);

Anonymous functions are also valid:

_defaults = {
     'auType': lambda self,cr,uid,ctx: random.choiche(['type1', 'type2']),
}

 

Regards

I was looking for v8 answer, but thx!

Mathias Colpaert
on 11/11/14, 8:32 AM
0



This is also possible

STATES = [
    ('draft', 'Draft'),
('confirmed', 'confirmed'),
    ('done', 'Done'),
]

class Foo(models.Model):
    _name = 'foo.bar'
    
    state = fields.Selection(STATES, default=STATES[0][0])


Thanks !!

Shameem Babu @ iWesabe


0

For version 9:

Option 1 Inline:

auType = fields.Selection(selection=[('type1', 'Type 1'),('type2', 'Type 2'),], string='Type', default='type1') 


Option 2 Function:

@api.model
def get_default_auType(self):
    default_auType = 'type1'
    return default_auType

auType = fields.Selection(selection=[('type1', 'Type 1'),('type2', 'Type 2'),], string='Type', default=get_default_auType)  

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.

Register

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

2 follower(s)

Stats

Asked: 11/11/14, 8:04 AM
Seen: 17350 times
Last updated: 4/17/18, 1:14 AM