Selon le Lecture 2.0 Documentation , la correspondance des motifs peut être effectuée dans un modèle comme: < Pré> xxx pré>
Le texte entre les crochets après les expressions de cas est traité comme une sortie (par exemple HTML), et cela est tout à fait pratique. P>
Cependant, lorsque vous essayez d'utiliser une expression correspondante Ce n'est pas une variable simple, telle que l'objet.member, comme celui-ci: p> Il en résulte une erreur de compilation:
Utilisation fonctionne, mais il semble un peu encombrant. p> est là un moyen approprié d'utiliser cette fonctionnalité de correspondance de modèle sur des expressions impliquant un objet et un membre (par exemple "')' attendu mais" cas "trouvé" " code> p>
définissant code> pour lier l'expression à une simple variable, comme ceci: p >
album.year code>)? p> p>
3 Réponses :
Avez-vous essayé juste de le faire?
@album.year.getOrElse("<b>None</b>");
Je sais que c'est une solution alternative possible de résoudre l'exemple simple qui apparaît dans ma question ... Toutefois, cet exemple était juste pour démontrer le problème, c'est-à-dire que la correspondance de modèle en jeu ne fonctionne pas complètement ou ne fonctionne pas comme prévu.
Avez-vous essayé cela? voir ici pour un exemple: https://github.com/bjartek/computer-database-mongo/blob/matchtest/app/views/list.scala.html#l67 p> < P> On dirait que WhitSpace est très important d'avoir raison lorsque cela le faisait dans le modèle p> p>
Ok, je viens de l'essayer avec l'espace blanche ajustée. Ça ne marche toujours pas. La différence entre votre exemple et votre mine est que votre expression correspondante est un identifiant simple (@company) et mine est @ objet.member.
pas possible actuellement (dans la version 2.0.1), comme il s'agit d'un bogue confirmé: p>
est @ (album.year match {Case certains (Y: INT) => {@y} case non => { Nope b>}}) ou @ (album.year) correspondent {Case certains (Y : INT) => {@y} case Non => { Nope B>}} travail?
Non, aucun de ces travaux. Le premier résulte en "début de définition prévu", et le second résulte du même "") "attendu ..." Erreur comme ci-dessus.
@ {album.year Match {Case certains (Y: INT) => {@y} case non => { Nope B>}}} fonctionner?
Nope, même résultat ("début de définition prévu").
Merci pour la solution temporaire. Il semble être corrigé, mais pas encore sorti dans une version stable.