Friday, September 4, 2020

I continued to work on the LETS tutorial (A Local Exchange Trade System). I added a branch “step2” and a section Step 2 : Menus and gadgets. I added a branch “step3” and a section Step 3 : Filtering.

Internal optimizations:

  • lino.core.site.Site.setup_quicklinks() no longer searches and executes a global function setup_quicklinks() in each plugin, but calls the new plugin method lino.core.plugin.Plugin.get_quicklinks().

  • lino.core.model.Model.get_simple_parameters() may now yield an iterator of a series of fields. Until now the application developer had to write:

    @classmethod
    def get_simple_parameters(cls):
        for f in super(Demand, cls).get_simple_parameters():
            yield f
        yield "customer"
        yield "customer__place"
    

Now they can write more intuitively:

@classmethod
def get_simple_parameters(cls):
    yield super(Demand, cls).get_simple_parameters()
    yield "customer"
    yield "customer__place"

TODO: review the UserDetail layout (in all three steps). There is “design problem”: the LETS tutorial is in the Developer Guide but it requires a Contributor environment.