20120123 ======== Fehlerjagd vor dem Release. - Der :guilabel:`[Upload]`-Button von :meth:`quick_upload_buttons ` enthielt fehlerhaften Code:: Upload Der erste Parameter, `caller` fehlte. Außerdem habe ich Ticket :srcref:`docs/tickets/56` eröffnet. - Beim Ausdruck der `contacts/Person/eid-content.odt` (eID-Inhalt) kamen zwei Fehler: - "Error while evaluating expression "self.card_type_text()". card_type_text() takes exactly 2 arguments (1 given)" --> ``self.card_type_text()`` wurde ersetzt durch ``self.card_type``. - Error while evaluating expression "self.sex". 'Person' object has no attribute 'sex' Person.card_type ist jetzt auch endlich eine ChoiceList namens :class:`lino.apps.dsbe.models.BeIdCardTypes`. Folglich müssen diese Texte nun auch via poEdit übersetzt werden. - Der Trick mit dem base_queryset, das in der Tabelle gespeichert wird, scheint nun ein Caching-Problem hervorzurufen. War einfach reproduzierbar, indem ich in einer Listenansicht einen Record erstellte. Anschließend wurde dieser Record erst nach einem Server-Neustart sichtbar. Seltsam, dass das nicht schon immer so war. Ich deaktiviere das ganze System, zumal ich nie nachgeprüft habe, ob das überhaupt was bringt. Kann auch sein, dass es bisher nur deshalb keinen Schaden anrichtete, weil es gar nicht funktionierte... - CalendarPanel machte "Uncaught TypeError: Cannot call method 'getTime' of null". restful_view schickt jetzt für ein GET der Liste niemals einen Phantom-Record mit. - New utility class :class:`lino.utils.Cycler` used in :mod:`lino.apps.dsbe.fixtures.demo`. - :func:`lino.tools.resolve_field` now returns an :class:`lino.tools.UnresolvedField` - Die Aktion :class:`Eintragen ` in der Tabelle der :class:`Kandidaten pro Kurs ` machte kein Refresh des Fensters. Das waren zwei Stunden Arbeit mit `containing_window` und `containing_panel`. - Einige Übersetzungen der labels von .dtl-Dateien waren verschwunden. Kann sein, dass ich die .dtl.py-Dateien irgendwann mal gelöscht hatte und `make appdocs` vor dem letzten `make mm` nicht habe laufen lassen. - Und `make appdocs` funktionierte übrigens nicht:: File "t:\hgwork\lino\lino\apps\dsbe\models.py", line 1107, in setup_columns for pg in PersonGroup.objects.filter(ref_name__isnull=False).order_by('ref_name'): ... django.db.utils.DatabaseError: no such table: dsbe_persongroup - Das Detail-Fenster von User holte sich jetzt auch die .dtl-Dateien von Person. Das kam, weil :class:`lino.modlib.contacts.models.PersonMixin` nur `Person` hieß. Und dann habe ich in letzter Minute noch mögliche Performance-Probleme festgestellt. Schade! Aber es ist jetzt 23.30 Uhr, ich habe 8 Stunden intensive Fehlerjagd hinter mir... jetzt gehe ich erstmal schlafen, und morgen schaue ich mir die Sachen genauer an. TODO: Lino.FormPanel sollte sein loadMask aktivieren (Meldung "Bitte warten"), wenn er speichert. Das ist nämlich vor allem bei aktiven Feldern (z.B. Eingabe einer Art60-7-Konvention) lästig.