Rails - html Personnalisé en simple_form étiquette
Je suis en train de personnaliser la sortie d'une simple_form association, en gros j'ai besoin d'afficher une case à cocher étiquette sur deux lignes. Mon idée était d'ajouter un "br" tag dans la "label", mais malheureusement, il se fait échappé à l'affichage, en fait, "br" au lieu de passer à une nouvelle ligne
- Je utiliser une lambda pour la personnalisation de l'étiquette de sortie
<%= f.association :item, :as => :check_boxes, :collection => current_user.items, :label => false, :label_method => lambda { |item| "#{item.city.capitalize},<br> #{item.address}" }%>
ce qui produit une fuite de br dans le label de la chaîne, comment pourrais-je afficher l'étiquette sur deux lignes?
OriginalL'auteur Carlo | 2013-02-03
Vous devez vous connecter pour publier un commentaire.
appel
html_safe
méthode sur la chaîne que vous souhaitez ne pas être échappés.Vous êtes les bienvenus. 🙂
Semble qu'il est vulnérable à une attaque XSS. Vous devriez avoir forcé échapper à la saisie de l'utilisateur, c'est à dire:
"#{h item.city.capitalize},<br> #{h item.address}".html_safe
Belle =) a Fonctionné pour moi merci
Ce commentaire n'apporte rien d'utile, mais je vous remercie - une solution simple à un problème aggravante.
OriginalL'auteur
Pour ceux d'entre vous qui cherchent à avoir votre propre code html dans des éléments comme le titre de l'OP de la question l'indique, vous pouvez le faire:
OriginalL'auteur
Ne
html_safe
aider?si non, puis après un exemple d'application sur github en valeur cette question, afin que nous puissions le corriger
OriginalL'auteur