onadata.libs.serializers package

Submodules

onadata.libs.serializers.attachment_serializer module

class onadata.libs.serializers.attachment_serializer.AttachmentSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('url', 'filename', 'mimetype', 'field_xpath', 'id', 'xform', 'instance', 'download_url', 'small_download_url', 'medium_download_url')
model

alias of Attachment

AttachmentSerializer.get_download_url(*args, **kwargs)
AttachmentSerializer.get_field_xpath(obj)
AttachmentSerializer.get_medium_download_url(obj)
AttachmentSerializer.get_small_download_url(obj)
onadata.libs.serializers.attachment_serializer.dict_key_for_value(_dict, value)

This function is used to get key by value in a dictionary

onadata.libs.serializers.attachment_serializer.get_path(data, question_name, path_list)

A recursive function that returns the xpath of a media file :param json data: JSON representation of xform :param string question_name: Name of media file being searched for :param list path_list: Contains the names that make up the xpath :return: an xpath which is a string or None if name cannot be found :rtype: string or None

onadata.libs.serializers.chart_serializer module

class onadata.libs.serializers.chart_serializer.ChartSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('id', 'id_string', 'url')
model

alias of XForm

class onadata.libs.serializers.chart_serializer.FieldsChartSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.ModelSerializer

class Meta
model

alias of XForm

FieldsChartSerializer.to_representation(obj)

onadata.libs.serializers.clone_xform_serializer module

class onadata.libs.serializers.clone_xform_serializer.CloneXFormSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

create(validated_data)
update(instance, validated_data)
validate_username(value)

Check that the username exists

onadata.libs.serializers.data_serializer module

class onadata.libs.serializers.data_serializer.DataInstanceSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.ModelSerializer

class Meta
fields = ('json',)
model

alias of Instance

DataInstanceSerializer.to_representation(instance)
class onadata.libs.serializers.data_serializer.DataSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('id', 'id_string', 'title', 'description', 'url')
model

alias of XForm

class onadata.libs.serializers.data_serializer.InstanceHistorySerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.ModelSerializer

class Meta
fields = ('json',)
model

alias of InstanceHistory

InstanceHistorySerializer.to_representation(instance)
class onadata.libs.serializers.data_serializer.JsonDataSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

to_representation(obj)
class onadata.libs.serializers.data_serializer.OSMSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

data

Returns the serialized data on the serializer.

to_representation(obj)

Return a list of osm file objects from attachments.

class onadata.libs.serializers.data_serializer.OSMSiteMapSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

to_representation(obj)

Return a list of osm file objects from attachments.

class onadata.libs.serializers.data_serializer.SubmissionSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

to_representation(obj)

onadata.libs.serializers.dataview_serializer module

class onadata.libs.serializers.dataview_serializer.DataViewMinimalSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
model

alias of DataView

class onadata.libs.serializers.dataview_serializer.DataViewSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
model

alias of DataView

DataViewSerializer.create(validated_data)
DataViewSerializer.get_count(obj)
DataViewSerializer.get_has_hxl_support(obj)
DataViewSerializer.get_instances_with_geopoints(obj)
DataViewSerializer.get_last_submission_time(obj)
DataViewSerializer.update(instance, validated_data)
DataViewSerializer.validate(attrs)
DataViewSerializer.validate_columns(value)
DataViewSerializer.validate_query(value)
onadata.libs.serializers.dataview_serializer.match_columns(data, instance=None)
onadata.libs.serializers.dataview_serializer.validate_date(value)
onadata.libs.serializers.dataview_serializer.validate_datetime(value)

onadata.libs.serializers.export_serializer module

class onadata.libs.serializers.export_serializer.ExportSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('id', 'job_status', 'type', 'task_id', 'xform')
model

alias of Export

ExportSerializer.get_job_status(obj)
ExportSerializer.get_type(obj)

onadata.libs.serializers.geojson_serializer module

class onadata.libs.serializers.geojson_serializer.GeoJsonListSerializer(*args, **kwargs)

Bases: onadata.libs.serializers.geojson_serializer.GeoJsonSerializer

Creates a FeatureCollections

to_representation(obj)
class onadata.libs.serializers.geojson_serializer.GeoJsonSerializer(*args, **kwargs)

Bases: rest_framework_gis.serializers.GeoFeatureModelSerializer

class Meta
fields = ('id', 'xform')
geo_field = 'geom'
id_field = False
lookup_field = 'pk'
model

alias of Instance

GeoJsonSerializer.to_representation(obj)
class onadata.libs.serializers.geojson_serializer.GeometryField(**kwargs)

Bases: rest_framework_gis.fields.GeometryField

to_representation(value)
onadata.libs.serializers.geojson_serializer.create_feature(instance, geo_field, fields)

Create a geojson feature from a single instance

onadata.libs.serializers.geojson_serializer.geometry_from_string(points)

Takes a string, returns a geometry object

onadata.libs.serializers.geojson_serializer.is_polygon(point_list)

Takes a list of tuples and determines if it is a polygon

onadata.libs.serializers.metadata_serializer module

class onadata.libs.serializers.metadata_serializer.MetaDataSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('id', 'xform', 'project', 'instance', 'data_value', 'data_type', 'data_file', 'data_file_type', 'media_url', 'file_hash', 'url', 'date_created')
model

alias of MetaData

MetaDataSerializer.create(validated_data)
MetaDataSerializer.get_content_object(validated_data)
MetaDataSerializer.get_media_url(obj)
MetaDataSerializer.update(instance, validated_data)
MetaDataSerializer.validate(attrs)

Validate url if we are adding a media uri instead of a media file

onadata.libs.serializers.metadata_serializer.get_linked_object(parts)

Returns an XForm or DataView object

Raises 404 Exception if object is not found. Raises serializers.ValidationError if the format of the linked object is not valid.

onadata.libs.serializers.note_serializer module

class onadata.libs.serializers.note_serializer.NoteSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.ModelSerializer

class Meta
model

alias of Note

NoteSerializer.create(validated_data)
NoteSerializer.get_owner(obj)
NoteSerializer.validate(attrs)

onadata.libs.serializers.organization_member_serializer module

class onadata.libs.serializers.organization_member_serializer.OrganizationMemberSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

create(validated_data)
data()
validate(attrs)
validate_role(value)

check that the role exists

validate_username(value)

Check that the username exists

onadata.libs.serializers.organization_serializer module

class onadata.libs.serializers.organization_serializer.OrganizationSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
exclude = ('created_by', 'is_organization', 'organization')
model

alias of OrganizationProfile

OrganizationSerializer.create(validated_data)
OrganizationSerializer.get_users(obj)
OrganizationSerializer.update(instance, validated_data)
OrganizationSerializer.validate_org(value)

onadata.libs.serializers.password_reset_serializer module

class onadata.libs.serializers.password_reset_serializer.PasswordReset(email, reset_url, email_subject=None)

Bases: object

save(subject_template_name='registration/password_reset_subject.txt', email_template_name='api_password_reset_email.html', token_generator=<django.contrib.auth.tokens.PasswordResetTokenGenerator object>, from_email=None)

Generates a one-use only link for resetting password and sends to the user.

class onadata.libs.serializers.password_reset_serializer.PasswordResetChange(uid, new_password, token)

Bases: object

save()
class onadata.libs.serializers.password_reset_serializer.PasswordResetChangeSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

create(validated_data, instance=None)
validate(attrs)
validate_uid(value)
class onadata.libs.serializers.password_reset_serializer.PasswordResetSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

create(validated_data)
validate_email(value)
validate_email_subject(value)
onadata.libs.serializers.password_reset_serializer.get_password_reset_email(user, reset_url, subject_template_name='registration/password_reset_subject.txt', email_template_name='api_password_reset_email.html', token_generator=<django.contrib.auth.tokens.PasswordResetTokenGenerator object>, email_subject=None)

Creates the subject and email body for password reset email.

onadata.libs.serializers.password_reset_serializer.get_user_from_uid(uid)

onadata.libs.serializers.project_serializer module

class onadata.libs.serializers.project_serializer.BaseProjectSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
exclude = ('shared', 'organization', 'user_stars')
model

alias of Project

BaseProjectSerializer.get_forms(*args, **kwargs)
BaseProjectSerializer.get_last_submission_date(obj)
BaseProjectSerializer.get_num_datasets(obj)
BaseProjectSerializer.get_starred(obj)
BaseProjectSerializer.get_teams(obj)
BaseProjectSerializer.get_users(obj)
class onadata.libs.serializers.project_serializer.BaseProjectXFormSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('name', 'formid', 'id_string')
model

alias of XForm

class onadata.libs.serializers.project_serializer.ProjectSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
exclude = ('shared', 'organization', 'user_stars')
model

alias of Project

ProjectSerializer.create(validated_data)
ProjectSerializer.get_data_views(*args, **kwargs)
ProjectSerializer.get_forms(*args, **kwargs)
ProjectSerializer.get_last_submission_date(obj)
ProjectSerializer.get_num_datasets(obj)
ProjectSerializer.get_starred(obj)
ProjectSerializer.get_teams(obj)
ProjectSerializer.get_users(obj)
ProjectSerializer.update(instance, validated_data)
ProjectSerializer.validate(attrs)
class onadata.libs.serializers.project_serializer.ProjectXFormSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('name', 'formid', 'id_string', 'num_of_submissions', 'downloadable', 'encrypted', 'published_by_formbuilder', 'last_submission_time', 'date_created', 'url', 'last_updated_at')
model

alias of XForm

ProjectXFormSerializer.get_published_by_formbuilder(obj)
onadata.libs.serializers.project_serializer.get_last_submission_date(*args, **kwargs)

Return the most recent submission date to any of the projects datasets.

Parameters:obj – The project to find the last submission date for.
onadata.libs.serializers.project_serializer.get_num_datasets(*args, **kwargs)

Return the number of datasets attached to the object.

Parameters:obj – The project to find datasets for.
onadata.libs.serializers.project_serializer.get_obj_xforms(obj)
onadata.libs.serializers.project_serializer.get_starred(obj, request)
onadata.libs.serializers.project_serializer.get_team_permissions(team, obj)
onadata.libs.serializers.project_serializer.get_teams(*args, **kwargs)
onadata.libs.serializers.project_serializer.get_users(*args, **kwargs)
onadata.libs.serializers.project_serializer.set_owners_permission(user, project)

Give the user owner permission

onadata.libs.serializers.restservices_serializer module

class onadata.libs.serializers.restservices_serializer.RestServiceSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.ModelSerializer

class Meta
model

alias of RestService

onadata.libs.serializers.share_project_serializer module

class onadata.libs.serializers.share_project_serializer.RemoveUserFromProjectSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: onadata.libs.serializers.share_project_serializer.ShareProjectSerializer

create(validated_data)
update(instance, validated_data)
validate(attrs)

Check and confirm that the project will be left with at least one owner. Raises a validation error if only one owner found

class onadata.libs.serializers.share_project_serializer.ShareProjectSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

create(validated_data)
update(instance, validated_data)
validate(attrs)
validate_role(value)

check that the role exists

validate_username(value)

Check that the username exists

onadata.libs.serializers.share_project_serializer.attrs_to_instance(attrs, instance)

onadata.libs.serializers.share_team_project_serializer module

class onadata.libs.serializers.share_team_project_serializer.RemoveTeamFromProjectSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: onadata.libs.serializers.share_team_project_serializer.ShareTeamProjectSerializer

create(validated_data)
update(instance, validated_data)
class onadata.libs.serializers.share_team_project_serializer.ShareTeamProjectSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

create(validated_data)
update(instance, validated_data)
validate_role(value)

check that the role exists

onadata.libs.serializers.share_xform_serializer module

class onadata.libs.serializers.share_xform_serializer.ShareXFormSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

create(validated_data)
update(instance, validated_data)
validate_role(value)

check that the role exists

validate_username(value)

Check that the username exists

onadata.libs.serializers.stats_serializer module

class onadata.libs.serializers.stats_serializer.StatsInstanceSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

to_representation(obj)
class onadata.libs.serializers.stats_serializer.StatsSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('id', 'id_string', 'url')
model

alias of XForm

class onadata.libs.serializers.stats_serializer.SubmissionStatsInstanceSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

data
to_representation(obj)
class onadata.libs.serializers.stats_serializer.SubmissionStatsSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('id', 'id_string', 'url')
model

alias of XForm

onadata.libs.serializers.tag_list_serializer module

class onadata.libs.serializers.tag_list_serializer.TagListSerializer(read_only=False, write_only=False, required=None, default=<class rest_framework.fields.empty>, initial=<class rest_framework.fields.empty>, source=None, label=None, help_text=None, style=None, error_messages=None, validators=None, allow_null=False)

Bases: rest_framework.fields.Field

to_internal_value(data)
to_representation(obj)

onadata.libs.serializers.team_serializer module

class onadata.libs.serializers.team_serializer.TeamSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

create(validated_data)
get_projects(obj)

Organization Projects with default role

get_users(obj)
update(instance, validated_data)

onadata.libs.serializers.textit_serializer module

class onadata.libs.serializers.textit_serializer.TextItSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

create(validated_data)
to_representation(instance)
update(instance, validated_data)

onadata.libs.serializers.user_profile_serializer module

class onadata.libs.serializers.user_profile_serializer.UserProfileSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('id', 'is_org', 'url', 'username', 'password', 'first_name', 'last_name', 'email', 'city', 'country', 'organization', 'website', 'twitter', 'gravatar', 'require_auth', 'user', 'metadata', 'joined_on', 'name')
model

alias of UserProfile

UserProfileSerializer.create(validated_data)
UserProfileSerializer.get_is_org(obj)
UserProfileSerializer.to_representation(obj)

Serialize objects -> primitives.

UserProfileSerializer.update(instance, validated_data)
UserProfileSerializer.validate(attrs)
UserProfileSerializer.validate_email(value)
UserProfileSerializer.validate_twitter(value)
UserProfileSerializer.validate_username(value)
class onadata.libs.serializers.user_profile_serializer.UserProfileWithTokenSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('url', 'username', 'name', 'email', 'city', 'country', 'organization', 'website', 'twitter', 'gravatar', 'require_auth', 'user', 'api_token', 'temp_token')
model

alias of UserProfile

UserProfileWithTokenSerializer.get_api_token(object)
UserProfileWithTokenSerializer.get_temp_token(object)

This should return a valid temp token for this user profile.

onadata.libs.serializers.user_serializer module

class onadata.libs.serializers.user_serializer.UserSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('id', 'username', 'first_name', 'last_name')
model

alias of User

onadata.libs.serializers.widget_serializer module

class onadata.libs.serializers.widget_serializer.GenericRelatedField(*args, **kwargs)

Bases: rest_framework.relations.HyperlinkedRelatedField

default_error_messages = {'incorrect_match': u'`{input}` is not a valid relation.'}
to_internal_value(data)
to_representation(value)
class onadata.libs.serializers.widget_serializer.WidgetSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.HyperlinkedModelSerializer

class Meta
fields = ('id', 'url', 'key', 'title', 'description', 'widget_type', 'order', 'view_type', 'column', 'group_by', 'content_object', 'data', 'aggregation', 'metadata')
model

alias of Widget

WidgetSerializer.get_data(obj)
WidgetSerializer.validate(attrs)
WidgetSerializer.validate_content_object(value)

onadata.libs.serializers.xform_serializer module

class onadata.libs.serializers.xform_serializer.XFormBaseSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: onadata.libs.serializers.xform_serializer.XFormMixin, rest_framework.serializers.HyperlinkedModelSerializer

class Meta
exclude = ('json', 'xml', 'xls', 'user', 'has_start_time', 'shared', 'shared_data', 'deleted_at')
model

alias of XForm

read_only_fields = ('json', 'xml', 'date_created', 'date_modified', 'encrypted', 'bamboo_dataset', 'last_submission_time')
class onadata.libs.serializers.xform_serializer.XFormCreateSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: onadata.libs.serializers.xform_serializer.XFormSerializer

get_has_id_string_changed(obj)
class onadata.libs.serializers.xform_serializer.XFormListSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

get_hash(*args, **kwargs)
get_manifest_url(*args, **kwargs)
get_url(*args, **kwargs)
get_version(obj)
class onadata.libs.serializers.xform_serializer.XFormManifestSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: rest_framework.serializers.Serializer

get_filename(*args, **kwargs)
get_hash(*args, **kwargs)
get_url(*args, **kwargs)
class onadata.libs.serializers.xform_serializer.XFormMixin

Bases: object

get_data_views(obj)
get_enketo_preview_url(obj)
get_enketo_url(obj)
get_users(obj)
class onadata.libs.serializers.xform_serializer.XFormSerializer(instance=None, data=<class rest_framework.fields.empty>, **kwargs)

Bases: onadata.libs.serializers.xform_serializer.XFormMixin, rest_framework.serializers.HyperlinkedModelSerializer

class Meta
exclude = ('json', 'xml', 'xls', 'user', 'has_start_time', 'shared', 'shared_data', 'deleted_at')
model

alias of XForm

read_only_fields = ('json', 'xml', 'date_created', 'date_modified', 'encrypted', 'bamboo_dataset', 'last_submission_time')
XFormSerializer.get_form_versions(obj)
XFormSerializer.get_metadata(obj)
onadata.libs.serializers.xform_serializer.user_to_username(item)

Module contents