İçereği Atla
Menü
Bu soru işaretlendi
2 Cevaplar
9374 Görünümler

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
Vazgeç

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

En İyi Yanıt

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
Vazgeç
En İyi Yanıt

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
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
1
Tem 23
2120
1
Mar 15
3881
2
Şub 25
970
0
May 24
1314
1
Ağu 23
4234