Skip to Content
Menú
This question has been flagged
2 Respostes
9232 Vistes

Hello.

It is possible to use fields.related which points to a char field and to show values as selection? I would like to do something like this:

'name': fields.char('Name', required=True, )

'related': fields.related('name', ,'related', type="selection", required=False, readonly=False, string='Related', store=True),

But this code is broken.

In other words - i would like to extract values from field 'name' and display them as selection.

Avatar
Descartar

For your requirement, you could try using Computational field and provide output as SELECTION.

Best Answer

QUICK answer is NO, NOT POSSIBLE!
explanation... 
field related is (can only be) of type the original field  is.. so if you make a relateion to a char field it can only be of type=char...
if you want selection, then you can make field related to some field selection in other model... 

Or if you need a field selection, you could make a dynamiy selection form a private method...

hope it helps.. 
 

Avatar
Descartar
Best Answer

I haven't tried it myself, but I think it is possible.  The trick lies in the fact that for a selection field is actually a char field anyway.  There are some limitation such as selection field only have a fix max length (which unfortunately I couldn't remember on top of my head).  Another trick is that you can supply a function to supply the selection list.  So, I presume that if the values in you char fields are not longer than the max length and you can create a function that returns [('name 1', 'name 1'), ('name 2', 'name 2'), ....] you may be able to make a related field as a selection field instead of char field.

It would be hard to me to guess what is the advantage of doing this though.  One reason why I would ask that is because the related field should be displayed readonly unless if the write mechanism is developed specifically to handle that.

Avatar
Descartar
Related Posts Respostes Vistes Activitat
1
de jul. 23
2015
1
de març 15
3716
2
de febr. 25
889
0
de maig 24
1212
1
d’ag. 23
4090