Odoo Help

0

0
2 Answers
0
Johan Van Houtvinck
2017/08/10 5:35

_order = 'field_name desc' in the model should normally work but it applies for all views of your application
If you want to specify the order only in that many2one field, one solution is to use a context value and overwrite the search function:

f.i.:

In my python class:
    period_id = fields.Many2one(string='Period',
                                                       comodel_name='account.period')

In my XML view
    <field name="period_id"  context="{'order_display': 'name desc' }"/>

In the python model of the comodel:
    class AccountPeriod(models.Model):
        _inherit = 'account.period'
        @api.model
        def search(self, args, offset=0, limit=None, order=None, count=False):
            ctx = self._context
            if 'order_display' in ctx:
                order = ctx['order_display']
            res = super(AccountPeriod, self).search(
                args, offset=offset, limit=limit, order=order, count=count)
            return res

0
Avatar

Prakash

--Prakash--

11546
| 6 7 9
Bikaner, India
--Prakash--

OpenERP Developer at SunARC Technology

Prakash
2014/05/24 14:44

To add your code in the many2one master table in the python file for the name fields or other fields that are using to display value in the drop down list

Ask a Question
Writer
734
Eric
Keep Informed
2 follower(s)
About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

Register
Odoo Training Center

Access to our eLearning platform and experience all Odoo Apps through learning videos, use cases and quizzes.

Test it now