Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
2 Odpowiedzi
18808 Widoki

Hello community,

How can I make a field readonly after save? It should not be editable after all.

I have try that with this, but it's not working at all.

product_reff = fields.Many2one('product.template', 'product_id', select=True)
is_created = fields.Boolean('Created')
def create(self, cr, uid, vals, context=None):
 vals['gio_is_created'] = True
 lot = super(stock_production_lot, self).create(cr, uid, vals, context=context)
 return lot


<field name="product_reff" position="attributes">
 <attribute name="attrs">{'readonly': [('is_created','=',True)]}</attribute>
 </field>


Thank you

Awatar
Odrzuć

the answer dose not working for me, dose your problem solved?

Najlepsza odpowiedź

hi,

<field name="product_reff" position="attributes"> <attribute name="attrs">{'readonly': [('is_created','=',True)]}</attribute>  </field>

this should works I think is is_created has a true value.

just try this also

<xpath expr='//field[@name='product_ref']' position='attributes'>

     <attribute name='attrs'>

        {'readonly': [('is_created','=',True)]}

    </attribute>

</xpath>

Awatar
Odrzuć
Najlepsza odpowiedź

You do not need an extra field like the `is_created`. You can use the `id` field. If the `id` is not set, the record is being created. If the `id` is set, the record has been created.

   

    {'readonly': [('id', '!=', False)]}

Awatar
Odrzuć
Powiązane posty Odpowiedzi Widoki Czynność
3
gru 23
90960
3
wrz 21
5081
3
sty 21
12286
3
mar 20
42812
1
lip 16
6816