コンテンツへスキップ
メニュー
この質問にフラグが付けられました
2 返信
10099 ビュー
アバター
破棄
最善の回答

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



アバター
破棄
関連投稿 返信 ビュー 活動
1
1月 24
14257
2
3月 18
5062
0
1月 18
3174
2
2月 24
25633
3
2月 25
55531