lesana.collection module¶
- class lesana.collection.Collection(directory=None, itemdir='items')[source]¶
Bases:
object
- PARSER_FLAGS = 23¶
- get_all_documents()[source]¶
Yield all documents in the collection.
Note that the results can’t be sorted, even if the collection has a default_sort; if you need sorted values you need to use a regular search with a query of ‘*’
- property indexed_fields¶
- classmethod init(directory=None, git_enabled=True, edit_file=None, settings={})[source]¶
Initialize a lesana repository
directory defaults to . if git_enabled is True, git support is enabled and if possible a git repository is initalized. edit_file is a syncronous function that runs on a filename (possibly opening the file in an editor) and should manage its own errors.
- update_cache(fnames=None, reset=False)[source]¶
Update the xapian db with the data in files.
fnames
is a list of basenames of files inself.itemdir
.If no files have been passed, add everything.
if
reset
the existing xapian db is deleted before indexingReturn the number of files that have been added to the cache.
- class lesana.collection.Entry(collection, data={}, fname=None)[source]¶
Bases:
object
- auto()[source]¶
Update all fields of this entry, as required by the field settings.
This is called by the reference client before an edit, so that the user can make further changes.
Note that the stored file is not changed: if you need it you need to save the entry yourself.
- property idterm¶
- property short_id¶
- property yaml_data¶