20140221 (Friday, 21 February 2014)¶
First Lino Application Developer Workshop¶
With Manuel we are creating “Lino Sunto”, an application to manage products and vendors:
https://github.com/ManuelWeidmann/lino-sunto
Our application is to be run on an intranet where no authentication is
required. Thus user_model
can remain empty, and
lino.modlib.users
is not installed.
After having added a detail_layout to our Products table,
we were no longer allowed to add rows.
The insert window showed up, but all entry fields were disabled
and the SubmitInsert and SubmitInsertAndStay buttons were missing.
That was because we had no users.
I fixed this by removing the
required = dict(user_level='user')
that was defined on
lino.core.actions.SubmitDetail
and subclasses.
While discovering the above, I tried to activate authentication
by user_model
to "users.User"
and adding lino.modlib.users
to my get_installed_plugins
,
just for testing whether it works then.
This revealed another series of subtle problems:
The fixtures
demo and demo2
who create Robin Rood, Rolf Rompen their friends
have been until now in
lino.modlib.system
for some subtle historical reason.
Now they are in lino.modlib.users
.
These fixtures din’t work when languages
was not set
(because
apply_languages
did not call
setup_languages
in that case.)
Lino also required lino.modlib.system
to be installed when
user_model
was non-empty. No longer.
Moved two doctest cases from the Lino blog to General overview of Lino Welfare because they caused the Lino test suite to fail on a system without Lino Welfare installed.
Restored some failing test cases in the north test suite.
Lino in Châtelet¶
lino.core.kernel
now logs more debug messages.The French demo fixtures required a few bits of fiddling.