geonature.core.gn_commons.repositories

Module Contents

Classes

TMediaRepository

Reposity permettant de manipuler un objet média

TMediumRepository

Classe permettant de manipuler des collections

Functions

get_table_location_id(schema_name, table_name)

class geonature.core.gn_commons.repositories.TMediaRepository(data=None, file=None, id_media=None)[source]

Reposity permettant de manipuler un objet média au niveau de la base de données et du système de fichier de façon synchrone

media_data[source]
data[source]
file[source]
media[source]
new = False[source]
create_or_update_media()[source]
Création ou modification d’un média :
  • Enregistrement en base de données

  • Stockage du fichier

_persist_media_db()[source]

Enregistrement des données dans la base

absolute_file_path(thumbnail_height=None)[source]
test_header_content_type(content_type)[source]
test_url()[source]
file_path(thumbnail_height=None)[source]
upload_file()[source]

Upload des fichiers sur le serveur

is_img()[source]
media_type()[source]
get_image()[source]
has_thumbnails()[source]

Test si la liste des thumbnails définis par défaut existe

has_thumbnail(size)[source]

Test si le thumbnail de taille X existe

create_thumbnails()[source]

Creation automatique des thumbnails dont les tailles sont spécifiés dans la config

create_thumbnail(size, image=None)[source]
get_thumbnail_url(size)[source]

Fonction permettant de récupérer l’url d’un thumbnail Si le thumbnail n’existe pas il est créé à la volé

delete()[source]
_load_from_id(id_media)[source]

Charge un média de la base à partir de son identifiant

class geonature.core.gn_commons.repositories.TMediumRepository[source]

Classe permettant de manipuler des collections d’objet média

get_medium_for_entity(entity_uuid)[source]

Retourne la liste des médias pour un objet en fonction de son uuid

static sync_medias()[source]
Met à jour les médias
  • supprime les médias sans uuid_attached_row plus vieux que 24h

  • supprime les médias dont l’object attaché n’existe plus

geonature.core.gn_commons.repositories.get_table_location_id(schema_name, table_name)[source]