跳至内容
菜单
此问题已终结
1 回复
3209 查看

when the user select the "Aérrienne" option i just want to add new options to the type_transport select


```python

mode_transport = fields.Selection([ ('Routière\Maritime','Routière\Maritime'), ('Routière','Routière'),('Aérrienne','Aérrienne') ],string="Mode de Transport") type_transport = fields.Selection([('test1','test1')],string="responsible"

@api.onchange("mode_transport")

def _set_type_transport(self):

 if self.mode_trasport == False

  pass

 elif self.mode_transport == 'Aérrienne'

  self.type_transport = fields.Selection(add_selection=[("new option","new option")])

```


形象
丢弃
最佳答案
_type_transport = [('test1','test1')]

mode_transport = fields.Selection([('Routière\Maritime', 'Routière\Maritime'), ('Routière', 'Routière'), ('Aérrienne', 'Aérrienne')],string="Mode de Transport")
type_transport = fields.Selection(lambda self: self._type_transport,string="responsible")

@api.onchange("mode_transport")
def _set_type_transport(self):
if self.mode_trasport == False :
return
elif
self.mode_transport == 'Aérrienne' :
self.type_transport =self._type_transport.append(("new option","new option"))

形象
丢弃

You need to check to see if the option has already been added, such case may happen when you select the same option more than once.
And also you page need to be reloaded for the added options to show.

相关帖文 回复 查看 活动
1
6月 25
1683
3
7月 25
3311
1
5月 25
1453
1
5月 25
1717
4
5月 25
2861