Alors en fait j'ai trouvé une autre solution, j'ai ajouté un attribut
derndate dans la classe arbre :
derndate = fields.Date(
string=u'Dernière date',
help=u'Dernière date',
states=STATES,
depends=DEPENDS,
on_change_with=['evolution']
)
def on_change_with_derndate(self):
return self.evolution[-1].date
Cela me renvoie la dernière date de evol_arbre.
Le mercredi 12 mars 2014 16:58:35 UTC+1, Pascal Obstetar a écrit :
>
> Bonjour,
>
> J'ai ces classes ci-dessous :
>
> class evol_arbre(ModelSQL, ModelView):
> u'Évolution d\'un arbre'
> __name__ = 'cg.evol_arbre'
> _rec_name = 'date'
>
> arbre = fields.Many2One(
> 'cg.arbre',
> string=u'Arbre ID',
> help=u'Arbre ID',
> )
> date = fields.Date(
> string = u'Date',
> help=u'Date du constat',
> required = True,
> )
>
> mecanique = fields.Selection(
> _MECANIQUES,
> string = u'État mécanique',
> help = u'État mécanique de l\'arbre',
> required=False,
> )
>
> class arbre(ModelSQL, ModelView):
> u'Arbres'
> __name__ = 'cg.arbre'
> _rec_name = 'code'
>
> diametre = fields.Float(
> string = u'Diamètre',
> help=u'Diamètre du tronc',
> states=STATES,
> depends=DEPENDS,
> )
>
> evolution = fields.One2Many(
> 'cg.evol_arbre',
> 'arbre',
> string=u'Évolutions',
> help=u'Évolutions de l\'arbre',
> states=STATES,
> depends=DEPENDS,
> )
>
> je voudrais dans une vue arbre récupérer la date la plus récente de la
> classe evol_arbre pour l'arbre considéré ? faut-il un champ Function ? Si
> oui comment définir la fonction ?
> @+
>