onadata.apps.viewer.models package¶
Submodules¶
onadata.apps.viewer.models.column_rename module¶
ColumnRename model
- class onadata.apps.viewer.models.column_rename.ColumnRename(*args, **kwargs)¶
Bases:
Model
ColumnRename model
- exception DoesNotExist¶
Bases:
ObjectDoesNotExist
- exception MultipleObjectsReturned¶
Bases:
MultipleObjectsReturned
- column_name¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- classmethod get_dict()¶
Returns a dictionary where xpath is key and column_name is value
- id¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <django.db.models.manager.Manager object>¶
- xpath¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
onadata.apps.viewer.models.data_dictionary module¶
DataDictionary model.
- class onadata.apps.viewer.models.data_dictionary.DataDictionary(*args, **kwargs)¶
Bases:
XForm
DataDictionary model class.
- exception DoesNotExist¶
Bases:
DoesNotExist
- exception MultipleObjectsReturned¶
Bases:
MultipleObjectsReturned
- file_name()¶
Returns the XML filename based on the
self.id_string
.
- metadata_set¶
Accessor to the related objects manager on the one-to-many relation created by GenericRelation.
In the example:
class Post(Model): comments = GenericRelation(Comment)
post.comments
is a ReverseGenericManyToOneDescriptor instance.
- save(*args, **kwargs)¶
Sets additional form properties before saving to the DB
- tagged_items¶
Accessor to the related objects manager on the one-to-many relation created by GenericRelation.
In the example:
class Post(Model): comments = GenericRelation(Comment)
post.comments
is a ReverseGenericManyToOneDescriptor instance.
- onadata.apps.viewer.models.data_dictionary.is_newline_error(e)¶
Return True is e is a new line error based on the error text. Otherwise return False.
- onadata.apps.viewer.models.data_dictionary.process_xlsform(xls, default_name)¶
Process XLSForm file and return the survey dictionary for the XLSForm.
- onadata.apps.viewer.models.data_dictionary.save_project(sender, instance=None, created=False, **kwargs)¶
Receive XForm project to update date_modified field of the project and on the next XHR request the form will be included in the project data.
- onadata.apps.viewer.models.data_dictionary.set_object_permissions(sender, instance=None, created=False, **kwargs)¶
Apply the relevant object permissions for the form to all users who should have access to it.
- onadata.apps.viewer.models.data_dictionary.sheet_to_csv(xls_content, sheet_name)¶
Writes a csv file of a specified sheet from a an excel file
- Parameters:
xls_content – Excel file contents
sheet_name – the name of the excel sheet to generate the csv file
- Returns:
a (StringIO) csv file object
- onadata.apps.viewer.models.data_dictionary.upload_to(instance, filename, username=None)¶
Return XLSForm file upload path.
onadata.apps.viewer.models.export module¶
Export model.
- class onadata.apps.viewer.models.export.Export(*args, **kwargs)¶
Bases:
Model
Class representing a data export from an XForm
- CSV_EXPORT = 'csv'¶
- CSV_ZIP_EXPORT = 'csv_zip'¶
- exception DoesNotExist¶
Bases:
ObjectDoesNotExist
- EXPORT_MIMES = {'csv': 'csv', 'csv_zip': 'zip', 'geojson': 'geo+json', 'kml': 'vnd.google-earth.kml+xml', 'osm': 'osm', 'sav': 'sav', 'sav_zip': 'zip', 'xls': 'vnd.ms-excel', 'xlsx': 'vnd.openxmlformats', 'zip': 'zip'}¶
- EXPORT_OPTION_FIELDS = ['binary_select_multiples', 'dataview_pk', 'group_delimiter', 'include_images', 'include_labels', 'include_labels_only', 'include_hxl', 'language', 'query', 'remove_group_name', 'show_choice_labels', 'include_reviews', 'split_select_multiples', 'value_select_multiples', 'win_excel_utf8']¶
- EXPORT_TYPES = [('xlsx', 'Excel'), ('csv', 'CSV'), ('zip', 'ZIP'), ('kml', 'kml'), ('csv_zip', 'CSV ZIP'), ('sav_zip', 'SAV ZIP'), ('sav', 'SAV'), ('external', 'Excel'), ('osm', 'osm'), ('gsheets', 'Google Sheets'), ('geojson', 'geojson')]¶
- EXPORT_TYPE_DICT = {'csv': 'CSV', 'csv_zip': 'CSV ZIP', 'external': 'Excel', 'geojson': 'geojson', 'gsheets': 'Google Sheets', 'kml': 'kml', 'osm': 'osm', 'sav': 'SAV', 'sav_zip': 'SAV ZIP', 'xlsx': 'Excel', 'zip': 'ZIP'}¶
- EXTERNAL_EXPORT = 'external'¶
- FAILED = 2¶
- GEOJSON_EXPORT = 'geojson'¶
- GOOGLE_SHEETS_EXPORT = 'gsheets'¶
- KML_EXPORT = 'kml'¶
- MAX_EXPORTS = 10¶
- exception MultipleObjectsReturned¶
Bases:
MultipleObjectsReturned
- OSM_EXPORT = 'osm'¶
- PENDING = 0¶
- SAV_EXPORT = 'sav'¶
- SAV_ZIP_EXPORT = 'sav_zip'¶
- SUCCESSFUL = 1¶
- XLSX_EXPORT = 'xlsx'¶
- ZIP_EXPORT = 'zip'¶
- created_on¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- error_message¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- export_type¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- export_url¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- classmethod exports_outdated(xform, export_type, options=None)¶
Return True if export is outdated or there is no export matching the export_type with the specified options.
- filedir¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- filename¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- property filepath¶
Return the file path of an export file, None if the file does not exist.
- property full_filepath¶
Return the full filepath of an export file, None if the file does not exist.
- get_export_type_display(*, field=<django.db.models.fields.CharField: export_type>)¶
- get_next_by_created_on(*, field=<django.db.models.fields.DateTimeField: created_on>, is_next=True, **kwargs)¶
- get_previous_by_created_on(*, field=<django.db.models.fields.DateTimeField: created_on>, is_next=False, **kwargs)¶
- id¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- internal_status¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- classmethod is_filename_unique(xform, filename)¶
Return True if the filename is unique.
- property is_pending¶
Return True if an export status is pending.
- property is_successful¶
Return True if an export status successful.
- objects = <django.db.models.manager.Manager object>¶
- options¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- save(*args, **kwargs)¶
Save the current instance. Override this in a subclass if you want to control the saving process.
The ‘force_insert’ and ‘force_update’ parameters can be used to insist that the “save” must be an SQL insert or update (or equivalent for non-SQL backends), respectively. Normally, they should not be set.
- set_filename(filename)¶
Set the filename of an export and mark internal_status as Export.SUCCESSFUL.
- property status¶
Return the status [FAILED|PENDING|SUCCESSFUL] of an export.
- task_id¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- time_of_last_submission¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- xform¶
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- xform_id¶
- exception onadata.apps.viewer.models.export.ExportConnectionError¶
Bases:
Exception
ExportConnectionError exception class.
- exception onadata.apps.viewer.models.export.ExportTypeError¶
Bases:
Exception
ExportTypeError exception class.
- onadata.apps.viewer.models.export.export_delete_callback(sender, **kwargs)¶
Delete export file when an export object is deleted.
- onadata.apps.viewer.models.export.get_export_options_query_kwargs(options)¶
Get dict with options JSONField lookups for export options field
onadata.apps.viewer.models.parsed_instance module¶
ParsedInstance model
- exception onadata.apps.viewer.models.parsed_instance.ParseError¶
Bases:
Exception
Raise when an exception happens when parsing the XForm XML submission.
- class onadata.apps.viewer.models.parsed_instance.ParsedInstance(*args, **kwargs)¶
Bases:
Model
- ParsedInstance - parsed XML submission, represents the XML submissions as a python
object.
- DEFAULT_BATCHSIZE = 1000¶
- DEFAULT_LIMIT = 1000000¶
- exception DoesNotExist¶
Bases:
ObjectDoesNotExist
- exception MultipleObjectsReturned¶
Bases:
MultipleObjectsReturned
- STATUS = '_status'¶
- USERFORM_ID = '_userform_id'¶
- add_note(note)¶
Add a note for the instance.
- classmethod dicts(xform)¶
Iterates over a forms submissions.
- end_time¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- get_notes()¶
Returns a list of notes data objects.
- id¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- instance¶
Accessor to the related object on the forward side of a one-to-one relation.
In the example:
class Restaurant(Model): place = OneToOneField(Place, related_name='restaurant')
Restaurant.place
is aForwardOneToOneDescriptor
instance.
- instance_id¶
- lat¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- lng¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <django.db.models.manager.Manager object>¶
- remove_note(note_id)¶
Deletes the note with the pk as
note_id
- save(*args, **kwargs)¶
Save the current instance. Override this in a subclass if you want to control the saving process.
The ‘force_insert’ and ‘force_update’ parameters can be used to insist that the “save” must be an SQL insert or update (or equivalent for non-SQL backends), respectively. Normally, they should not be set.
- start_time¶
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- to_dict()¶
Returns a python dictionary object of a submission.
- to_dict_for_mongo()¶
Return the XForm XML submission as a python object.
- onadata.apps.viewer.models.parsed_instance.build_sql_where(xform, query, start=None, end=None)¶
Build SQL WHERE clause
- onadata.apps.viewer.models.parsed_instance.datetime_from_str(text)¶
Parses a datetime from a string and returns the datetime object.
- onadata.apps.viewer.models.parsed_instance.dict_for_mongo(item)¶
Validates the keys of a python object.
- onadata.apps.viewer.models.parsed_instance.get_etag_hash_from_query(sql=None, params=None)¶
Returns md5 hash from the date_modified field or
- onadata.apps.viewer.models.parsed_instance.get_name_from_survey_element(element)¶
Returns the abbreviated xpath of an element.
- onadata.apps.viewer.models.parsed_instance.get_sql_with_params(xform, query=None, fields=None, sort=None, start=None, end=None, start_index=None, limit=None, json_only: bool = True)¶
Returns the SQL and related parameters
- onadata.apps.viewer.models.parsed_instance.query_count(xform, query=None, date_created_gte=None, date_created_lte=None)¶
Count number of instances matching query
- onadata.apps.viewer.models.parsed_instance.query_data(xform, query=None, sort=None, start=None, end=None, start_index=None, limit=None, json_only: bool = True)¶
Query the submissions table and returns the results
- onadata.apps.viewer.models.parsed_instance.query_fields_data(xform, fields, query=None, sort=None, start=None, end=None, start_index=None, limit=None)¶
Query the submissions table and return json fields data
Module contents¶
Viewer models.