Chartes-TNAH / imago-commentaires

0 stars 3 forks source link

Pagination #29

Open MPica opened 6 years ago

MPica commented 6 years ago

Je galère un peu sur la pagination, j'ai du mal à identifier les différents éléments. Voici mon avancée pour référence.

    if image:
        resultats = Comment.query.filter(
            ***.like("%{}%".format(image))
        ).paginate(page=page, per_page=COMMENTS_PAR_PAGE)
        titre = "Parcourir les images :"

    return render_template(
        "pages/recherche.html",
        resultats=resultats,
        titre=titre,
        keyword=motclef
    )

Je le mets après les requêtes d'images dans le @app.routes

saroulle commented 6 years ago

Nous n'avons pas de page recherche, c'est normal que cela ne marche pas. Je pense qu'il faut une nouvelle page de type commentaire_image pour que cela marche et ce n'est pas très appproprié pour notre projet. Il faudrait plutôt chercher à n'afficher que la première image du manifeste Json car elle correspond toujours à la vue principale.

MPica commented 6 years ago

C'était surtout pour stocker le code (en cours d'adaptation) le temps de faire des MAJ avec le Master. Mais je ne parle pas de faire de pagination dans une nouvelle page recherche, mais comme nous disions avec @AnZadykhina, il s'agit, dans la page commentaire, de paginer les résultats d'image obtenus avec la requête Json (2 images par page) en ayant toujours les méta/commentaire sur la colonne d'à-côté.

MPica commented 6 years ago

Pour stocker ici notre avancée avec @Caillibot , nous faisons un essai qui ne fonctionne pas (mais toutes les erreurs qu'il nous renvoie sont dans d'autres fichiers). Nous en sommes à :

def commentaire(comment_id):
    import requests

    # On a bien sûr aussi modifié le template pour refléter le changement
    unique_commentaire = Comment.query.get(comment_id)
    utilisateur=User.query.get(unique_commentaire.comment_user_id)
    r = requests.get(unique_commentaire.comment_lien)
    data = r.json()
    simplified = []
    images = []

    for item in data["metadata"]:
        try:
            identifier = item["label"]
            simplified.append(identifier)

        except:
            error = 'Pas pu récupérer les données'
            data = {}

    for item in data["sequences"][0]["canvases"]:
        try:
            url_image = item["images"][0]["resource"]["@id"]
            images.append(url_image)
            resultats = images.paginate(1, 2, False)
            titre = "Parcourir les images :"
        except:
            error = "Pas pu récupérer d'image"
            data = {}

    if isinstance(page, str) and page.isdigit():
        page = int(page)
    else:
        page = 1

    return render_template('pages/comment.html', nom='Imaginatiiif',
                           commentaire=unique_commentaire,
                           user=utilisateur,
                           data=data.get('metadata'),
                           img = image)