Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
2 Ответы
10103 Представления
Аватар
Отменить
Лучший ответ

Just update the record using write method.

Example,

    def method_name(self, cr, uid, ids, context=None):
        self.write(cr, uid, ids, {'state': 'state_name'}, context=context)
        return True

Аватар
Отменить
Автор

thanks

thank you very much it did work

Лучший ответ

Hi,
In Odoo, you can change the state of a record (e.g., a model) when a button is clicked by using Python methods and XML views. Here's a step-by-step guide on how to achieve this:

Create a Button:
First, create a button in your Odoo model's XML view file. This button will trigger the action to change the state of the record. For example:

 


Then define a method that will change the state of record using write method

class YourModel(models.Model):
    _name = 'your.model'

    state = fields.Selection([
        ('draft', 'Draft'),
        ('approved', 'Approved'),
        ('rejected', 'Rejected'),
    ], default='draft', string='State')

    def action_change_state(self):
        # Update the state of the current record or a set of records
        self.write({'state': 'approved'})  # Change the state to 'approved'

Hope it helps



Аватар
Отменить
Related Posts Ответы Просмотры Активность
1
янв. 24
14257
2
мар. 18
5062
0
янв. 18
3174
2
февр. 24
25634
3
февр. 25
55533