web-dev-qa-db-fra.com

Obtenir la valeur du champ Vues dans le modèle Twig

J'essaie d'obtenir la valeur d'un champ et de l'utiliser comme classe pour l'encapsuleur d'un autre champ dans un affichage Views. Donc, essentiellement, ce dont j'ai besoin est de pouvoir obtenir une représentation sous forme de chaîne du premier champ. Le champ est déjà un champ de texte mais lorsque j'essaie d'obtenir le contenu, il ne me donne pas seulement une chaîne, ce que je dois pouvoir utiliser est une classe pour mon deuxième champ.

J'ai essayé d'utiliser {{ fields.[field_name].content }} Mais cela rend la recommandation du modèle twig avec les données. J'ai essayé d'utiliser la fonction getValue(), mais cela ne fonctionne pas renvoyer quoi que ce soit. J'ai essayé de passer les données à travers le filtre raw twig mais cela ne renvoie rien. J'ai essayé de rendre le tableau en utilisant dpm et kint mais ils me donnent tous les deux la possibilité trop d'informations et je ne peux pas restreindre à quel élément ou objet de tableau je dois utiliser. Je suis nouveau à Drupal alors peut-être que je n'utilise pas correctement Devel et Kint pour trouver ce que je cherche.

Existe-t-il une fonction que je dois utiliser pour obtenir les données de contenu sous forme de chaîne ou simplement brutes, ou existe-t-il un autre moyen pour y parvenir?

J'utilise Drupal 8.1.

3
chavab_1

field.content est le champ rendu. Et dans les vues, cela signifie que ce n'est plus un tableau de rendu, mais le balisage finalement rendu. Il est donc très problématique de l'utiliser comme nom de classe, non seulement à cause du débogage twig.

Mieux utiliser les données de ligne, où vous trouverez l'objet entité avec les données de champ de la base de données. Utilisez clean_class pour l'échapper pour l'utiliser comme nom de classe:

{{ row._entity.field_myfield.value|clean_class }}
3
4k4

J'ai essayé d'utiliser {{ fields.[field_name].content }} mais cela rend la recommandation du modèle twig avec les données.

C'est parce que le débogage twig est activé. Si vous désactivez twig debug, la recommandation disparaîtra).

0
No Sssweat

{{fields. [field_name] .content | striptags | trim}}
cela m'a aidé à imprimer les champs de chemin et d'URL d'image

0
Alex