in backend/models/dtos/project_dto.py [0:0]
def __hash__(self):
""" Make object hashable so we can cache user searches"""
hashable_mapping_types = ""
if self.mapping_types:
for mapping_type in self.mapping_types:
hashable_mapping_types += mapping_type
hashable_project_statuses = ""
if self.project_statuses:
for project_status in self.project_statuses:
hashable_project_statuses += project_status
hashable_teams = ""
if self.teams:
for team in self.teams:
hashable_teams += team
hashable_mapping_editors = ""
if self.mapping_editors:
for mapping_editor in self.mapping_editors:
hashable_mapping_editors = hashable_mapping_editors + mapping_editor
hashable_validation_editors = ""
if self.validation_editors:
for validation_editor in self.validation_editors:
hashable_validation_editors = (
hashable_validation_editors + validation_editor
)
return hash(
(
self.preferred_locale,
self.mapper_level,
hashable_mapping_types,
hashable_project_statuses,
hashable_teams,
self.organisation_name,
self.campaign,
self.page,
self.text_search,
hashable_mapping_editors,
hashable_validation_editors,
self.created_by,
)
)