DirectusAPI : afficher une image

Bonjour,

Je cherche à afficher une image dans une formulaire d’édition (après l’upload pas de soucis, mais après…).

J’utilise donc l’ID de l’image pour reçevoir un DirectusFile comme ceci-ci :

  @override
  Future<DirectusFile> getFile(String id) async {
    DirectusFile? directusFile =
        await _apiManager.getSpecificItem(id: id.toString());
    return directusFile!;
  }

Mais j’ai une erreur de type :

Error: Exception: No class mirror found for type Never. Please add the @DirectusCollection annotation to the class

Faut-il créer un modèle ou ai-je mal compris ?

Merci !

Finalement j’ai fait simple, peut-être y a t-il une autre manière…

Future<String> getFile(String id) async {
    final buffer = StringBuffer("${DirectusFile.baseUrl!}/assets/$id");
    return buffer.toString();

Si tu souhaites récupérer l’url, la classe DirectusFile contient la méthode suivante :

String getDownloadURL(
      {int? width,
      int? height,
      int? quality,
      Map<String, String> otherKeys = const {}})

en plus, tu peux te servir de l’api de Directus pour redimensionner tes images.

1 « J'aime »

Effectivement, mais je ne parvenais pas à récupérer un objet DirectusFile à partir du seul ID stocké en BDD, d’où la méthode.