On Thu, 2015-05-28 at 11:55 +0200, Christophe (net) wrote: > Le 28/05/2015 11:46, Cédric Krier a écrit : > > On 28 May 11:10, Christophe (net) wrote: > >> Le 28/05/2015 10:34, Cédric Krier a écrit : > >>> On 28 May 10:18, Christophe (net) wrote: > >>>> Hello, > >>>> > >>>> I try to find out when I create a new address on a party if this is the > >>>> first or not. Depending on the answer it must set a boolean in the > >>>> address > >>>> object. > >>>> I seek from the method of class 'default_<name_of_field>' has reached the > >>>> values of current instance. There is a way to do that (I am in v3.0) ? > >>> > >>> It sounds strange because addresses are already ordered by the field > >>> sequence. > >>> And moreover using the default value will not work properly with > >>> concurrency. > >> > >> Bizarre, on my installation the sequence field of the object party.address > >> is empty, I would forget something? > > > > Because it is done like that by design. > > The order is on (sequence, id). > > Ok, but to return to my original question, is it possible (and how) to > reach the values of the instance from a class method? > Is there an example somewhere ? >
If you know any other object-oriented programming language, you would understand why your question is strange. By definition, a classmethod is a method that runs at the level of the class object itself. Not an instance. As a result, there is no way to access instance attributes from a class method. >From your description though, you may want to look into the on_change_* and on_change_with_* methods. They will allow you to access instance values. But, I think they'll only allow access to the fields specified in the @fields.depends descriptor or the depends attribute of the field. > > > >>> PS: tryton-dev@ is to discuss the development of Tryton, tryton@ is > >>> better place for such question. > >> > >> Ok, how to move the thread ? > > > > You can't, it will be for the next one. > > >
