uploads : Managing uploaded files¶
lino.modlib.uploads plugin adds functionality for managing "uploads".
This is a tested document. The following instructions are used for initialization:
>>> from lino import startup >>> startup('lino_book.projects.min9.settings.doctests') >>> from lino.api.doctest import *
- upload file
A file that has been uploaded (or should or might be uploaded).
- upload type
The type of an upload file.
- upload area
A group of upload types that are being displayed in a given upload panel.
Django model representing an upload file.
The type of this upload.
UploadType. The choices for this field are usually limited to those in the same upload area.
A short description entered manually by the user.
Mixin for tables of uploads where the area is known. Inherited by
The summary displays the uploads related to this controller as a list grouped by uploads type.
Note that this also works on
lino_welfare.modlib.uploads.models.UploadsByProjectand their subclasses for the different _upload_area.
Shows my uploads (i.e. those whose author is the current user).
Shows the uploads controlled by this database object.
The application developer can define upload areas. Every upload area has its list of upload types. The default has only one upload area.
>>> rt.show(uploads.UploadAreas) ======= ========= ========= value name text ------- --------- --------- 90 general Uploads ======= ========= =========
For example Lino Welfare extends this list.
Django model representing an upload type.
The table with all existing upload types.
This usually is accessible via the Configure menu.
The application developer can define upload shortcuts. Every upload shortcut will create an upload shortcut field, a virtual field with a set of actions for quickly uploading or viewing uploads of a particular type for a given database object.
Declare your Site's upload shortcuts from within your
workflows_module. For example:
from lino.modlib.uploads.choicelists import add_shortcut as add add('contacts.Person', 'uploaded_foos', _("Foos"))
uploaded_foosfield visible in some detail layout.
Using the web interface, select, create an upload type named "Foo" and set its shortcut field to "Foos".
Upload a file from your PC to the server.
Open the uploaded file in a new browser window
The list of available upload shortcut fields in this application.
>>> rt.show(uploads.Shortcuts) No data to display