2017-12-29 2 views
0

Ich versuche Wörter zu unterstreichen, die dynamisch von der debug (params) -Methode generiert werden, die von rails bereitgestellt wird. Ich habe etwas darunter, aber es funktioniert offensichtlich nicht, und zusätzlich versuche ich, die Wörter mithilfe von Methoden zu ändern, die ich bereits kenne (wie die .upcase-Methode). Ich hoffte, das Wort Controller zu unterstreichen, wenn es im Text nur mit Ruby erscheint. Kann mir hier jemand helfen?Ruby on Rails - Unterstreichen Sie Wörter, wenn sie in dynamisch generiertem Text mit Ruby erscheinen

<%= debug(params) if Rails.env.development? %> 
    <% if debug(params).include?('controller:') %> 
     <%= 'controller'.upcase %> 
    <% end %> 

dank

edit:

ich das Debug hinzufügen sollte (params) ein Verfahren durch RAILS definiert ist, konnte ich folgendes tun, die noch scheint, so weit die Antworten war nicht richtig, was ich tun möchte.

<% if Rails.env.development? %> 
    <% debug_method = debug(params).split.each do |word| %> 
     <% if word == 'controller:' %> 
     <ul><% word.upcase %></ul> 
     <% end %> 
    <% end %> 
    <%= debug_method.join %> 
    <% end %> 

, die den folgenden Text zurückgibt: https://ibb.co/cvnEpw, halten Sie die Antworten in obwohl kommen. Ich möchte die Wörter in der Originalbox erhalten (die durch die Methode generiert wird, um das Controller-Wort zu unterstreichen https://ibb.co/jmSm2G).

Antwort

0

Die Antwort auf die Frage ist unten. Ich musste die .gsub und .html_safe Methoden verwenden.

<%= debug(params).gsub("controller:", "<u>controller:</u>").html_safe %> 

Dieser Code hält die bestehende HTML & CSS erzeugt durch Schienen intakt

0

Verwendung <u></u> Tag

<%= debug(params) if Rails.env.development? %> 
    <% if debug(params).include?('controller:') %> 
    <u><%= 'controller'.upcase %></u> 
<% end %> 

example here

+0

https://imgur.com/RBUMs9V https://ibb.co/ezOZNG Das ist ein Schritt der Nähe, aber immer noch nicht, was Ich suche. Ich möchte, dass die Wörter in der Box unterstrichen werden. – brff19

+0

@ brff19 Welchen Fehler bekommst du? – Gabbar

+0

keine Fehler, ich machte eine Bearbeitung im ursprünglichen Beitrag, wenn Sie es lesen möchten – brff19

0

Geben Sie den CSS-HTML-Element zu erzeugen:

p { text-decoration: underline; } 

Hinzufügen von HTML-elemnt Ihre Worte zu wickeln:

<%= debug(params) if Rails.env.development? %> 
    <% if debug(params).include?('controller:') %> 
    <p> <%= 'controller'.upcase %> </p> 
<% end %> 
+0

nicht ganz, was ich suche, machte ich eine Bearbeitung im ursprünglichen Beitrag, wenn Sie es lesen möchten – brff19