On 20 de juny de 2017 16.23.57 CEST, "Cédric Krier" <cedric.kr...@b2ck.com> wrote: >On 2017-06-20 06:20, Maxime Richez wrote: >> Hi, >> >> Here's my small problem in Tryton 4.2, i want to filter products on a > >> specific product category. I define those category as a property in a > >> configuration. > >Why using a Property field? > >> My code is here: https://pastebin.com/wDF8qGtX >> >> So in my main class (PrinterModel), i define a function field on >product >> category to get the default category stored in configuration... >> (printer_category). >> >> This function field is used in my domain for the product to get only >> products from a specific category (and children too) (printer_model >field) >> >> My code wasn't working until i define a default_printer_category... >code is >> redundant but it's working. >> >> My question: is it necessary to use a function field for the domain >or can >> i evaluate a function in domain ? > >Only field of a model can be evaluated by PYSON. >There is the PYSON.Id but it will require that you create the category >in XML. > >> If not, how to avoid code redundancy for >> default_ method and get_ method for the function field ? > >You can call the default_ method from the getter method. >But you need to have both because the getter will be called only once >the record is saved/created. > >> Is there a better way to implement this "filter" ? i'm looking for >examples >> in code but unsuccessfully. > >I think the creation of categories from XML could be a good option.
I agree with Cedric here. Specially if you want to use it on a domain. Let me explain: If you store it on the configuration, changing the value on the configuration may invalidate all the existing records domain. Creating a static category with xml records will prevent it. -- Enviado desde mi dispositivo Android con K-9 Mail. Por favor, disculpa mi brevedad. -- You received this message because you are subscribed to the Google Groups "tryton-dev" group. To view this discussion on the web visit https://groups.google.com/d/msgid/tryton-dev/395E6C43-660B-4D6C-84F1-6F8F4A73D2C8%40koolpi.com.