J'ai une carte qui est du type Aucun argument implicite de type: écrit [String [String, AnyRef]] P>
blockQquote> supposons que cette carte dispose des données suivantes: p> Donc, ma question est si j'ai la deuxième type Sur la carte, comment vais-je le convertir en Json en utilisant Just Play-Json? P> Correction => [string, anyref] code>. Comment puis-je le convertir en Json en utilisant Play-Json. J'ai trouvé des réponses mais elles avaient tous un type défini. Quand j'ai essayé de convertir, j'ai reçu le message d'erreur du compilateur comme:
Cette carte est obtenue à la suite du résultat de la recherche élastique. Je ne peux donc pas garantir que chaque fois que la carte sera la même, mais il sera du même type qui est, mapper [String, AnyRef]. P> P> P> P> P> >
3 Réponses :
Vous ne pouvez pas faire ça. P>
La chose la plus proche de ou en d'autres termes, vous avez besoin d'un laissez-moi savoir si vous avez besoin d'une explication plus poussée. P> anyref code> Vous pouvez avoir est
play.api.libs.json.jsvalue code>. p>
JSON CODE> Structure de l'objet, dans lequel vous avez écrivains em>, resp. lecteurs em>. p>
L'option la plus simple consiste à convertir toutes les valeurs à chaîne code> et à enregistrer cela.
val stringMap = testMap.mapValues(_.toString)
PLAY-JSON Essayez d'être aussi Typeafe que possible et cela signifie qu'il ne peut pas fournir implicitement sérialisé pour mais gardez à l'esprit qu'il va exploser quand vous aurez un type non pris en charge. Carte. Je suppose que le meilleur moyen n'est pas de créer un écrivain implicite mais d'utiliser Démo P> Si c'était utile, Up-vote s'il vous plaît et marquez comme réponse. p> p> mappe [string, anyref] code>. Il pourrait ourdler d'autres sérialiseurs et ne pouvait pas s'assurer qu'il ne manquera pas. Vous pouvez créer le vôtre mais ce sera codé dur et vous ne devez pas la mettre dans vos globaux:
TOJSValue code> sur les arguments d'une carte, puis essayez de le sérialiser (comme dans le dernier
printLn code>). P>
Merci de répondre. J'essaie d'aller chercher des résultats à partir de la recherche élastique qui ne retournera pas le nombre exact d'éléments dans la carte une fois la recherche échoue. Désolé j'ai oublié de l'ajouter dans ma question
Peu importe, je suppose. Plus important est de soutenir tous les types possibles que vous avez.