set"> set"> set" />

Hoe kan ik elke nieuwe regel naar '<br/>' converteren/vervangen?

set tabstop=4
set shiftwidth=4
set nu
set ai
syntax on
filetype plugin indent on

I tried this, content.gsub("\r\n","
")
but when I click the view/show button to see the contents of these line, I get the output/result=>

set tabstop=4
set shiftwidth=4
set nu
set ai
syntax on
filetype plugin indent on

Maar ik probeerde die lijnen als een aparte lijn te krijgen. Maar alle worden als een enkele regel. Waarom?

How can I make all those lines with a html break (
) ?

Ik probeerde dit, dat werkte niet.

@addpost = Post.new params[:data]
@temptest = @addpost.content.html_safe
@addpost.content = @temptest
#logger.debug(@addpost)
@addpost.save

Also tried without saving into database. Tried only in view layer,<%= t.content.html_safe %> That didn't work too.

Heb dit van paginabron

        vimrc file 
2011-12-06

set tabstop=4<br/><br/>set shiftwidth=4<br/><br/>set nu<br/><br/>set ai<br/><br/>syntax on<br/><br/>filetype plugin indent on
Edit Delete

3
Ik heb het oorspronkelijke bericht bewerkt, ik heb dit opgehaald uit de paginabron en tabstop ingesteld = 4 & lt; br/& gt; & lt; br/& gt; set shiftwidth = 4 & lt; br/& gt; & lt; br/& gt; set nu & lt; br/& gt; & lt; br/& set ai & lt; br/& lt; br/& syntax op & lt; br/& gt; & lt; br/& gt; plug-in voor filetype op
, het ziet ernaar uit dat de haakse hoek wordt vertaald
toegevoegd de auteur shibly, de bron
misschien wil je de white-space: pre; CSS-eigenschap en de tag
. Bij het gebruik van de 
 -tag is het enige teken dat u moet laten ontsnappen het teken .
toegevoegd de auteur Lie Ryan, de bron
Ter informatie,
is de manier om het vanaf html5 te schrijven. Je kunt nog steeds
schrijven voor xhtml-compatibiliteit, maar dit wordt niet aanbevolen. In feite, blijf bij
;-)
toegevoegd de auteur Dominic Goulet, de bron
@Lie Ryan - Ik heb dat antwoord enkele minuten geleden gepost. Ik geloof dat het de manier is om te gaan!
toegevoegd de auteur Dominic Goulet, de bron

5 antwoord

Een alternatief om elke nieuwe regel om te zetten naar html-tags
is om CSS te gebruiken om de inhoud weer te geven zoals deze is gegeven:

.wrapped-text {
    white-space: pre-wrap;
}

Hiermee wordt de inhoud op een nieuwe regel verpakt, zonder de huidige vorm te wijzigen.

20
toegevoegd

U moet html_safe gebruiken als u ingesloten HTML wilt renderen:

<%= @the_string.html_safe %>

Als het nihil is, zal raw (@the_string) geen uitzondering opleveren. Ik ben een beetje ambivalent over raw ; Ik probeer bijna nooit een tekenreeks weer te geven die mogelijk nul is.

6
toegevoegd
Ik heb dit geprobeerd, het werkte niet, alle regels als een enkele regel, ik heb een oorspronkelijke post gewijzigd, zie de oorspronkelijke post met code die ik heb geprobeerd.
toegevoegd de auteur shibly, de bron
@ addpost.content.html_safe, en ik heb ook de html.save-functie geprobeerd in show.html.erb, t.content.html.safe, dat werkte niet.
toegevoegd de auteur shibly, de bron
Ook geprobeerd dat in zicht laag, werkte ook niet.
toegevoegd de auteur shibly, de bron
Ik heb het oorspronkelijke bericht bewerkt, ik heb dit opgehaald uit de paginabron en tabstop ingesteld = 4 & lt; br/& gt; & lt; br/& gt; set shiftwidth = 4 & lt; br/& gt; & lt; br/& gt; set nu & lt; br/& gt; & lt; br/& set ai & lt; br/& lt; br/& syntax op & lt; br/& gt; & lt; br/& gt; plug-in voor filetype op
, het ziet ernaar uit dat de haakse hoek wordt vertaald
toegevoegd de auteur shibly, de bron
Ja, dat werkte in de view-laag, ik moest dit doen, <% temptest2 = @ post.content.gsub (/ [\ n] /, "
")%> <% = temptest2.html_safe%>
toegevoegd de auteur shibly, de bron
@guru Ik zie niets dat lijkt op raw of html_safe in wat je hebt gepost. Zodra u de
-tags hebt toegevoegd, is onbewerkt of html_safe uw werkwijze.
toegevoegd de auteur Dave Newton, de bron
@guru Ik begrijp niet wat je doet; normaal zou je dat niet opslaan in de DB, het is voor de beeldlaag. Succes.
toegevoegd de auteur Dave Newton, de bron
@guru Kan het dan niet uitleggen - ik zie niet hoe het niet kan werken. Als u een tekenreeks "foo
bar" opneemt, geeft u deze weer als een instantievariabele, raw of html_safe , de HTML wordt gerenderd.
toegevoegd de auteur Dave Newton, de bron
@guru Ik zou overwegen om de meeste van die functionaliteit ofwel in een helper, in het model, in de controller, enz. te stoppen in plaats van alles in het zicht te doen - erg rommelig daar!
toegevoegd de auteur Dave Newton, de bron

Met ruby On Rails 4.0.1 komt de simple_format van TextHelper. Het zal meer tags verwerken dan het gevraagde OP, maar zal kwaadwillende tags filteren op de inhoud (opschonen).

simple_format(t.content)

Reference : http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html

5
toegevoegd

http://www.ruby-doc.org/core-1.9.3/String.html as it says there gsub expects regex and replacement since "\n\r" is a string you can see in the docs:

als deze wordt gegeven als een tekenreeks, worden de metacharacters van reguliere expressies die deze bevat letterlijk geïnterpreteerd, bijvoorbeeld '\ d' komt overeen met een speling gevolgd door 'd', in plaats van een cijfer.

dus je probeert "\ n \ r" te matchen, je wilt waarschijnlijk een tekenklasse met \ n of \ r - [\ n \ r]

a = <<-EOL
set tabstop=4
set shiftwidth=4
set nu
set ai
syntax on
filetype plugin indent on
EOL
print a.gsub(/[\n\r]/,"
\n");
3
toegevoegd
En toch is het een enkele regel op de HTML-webpagina, wat ik heb, stel tabstop = 4 in

stel shiftbreedte in = 4

stel nu in

stel in ai

syntaxis op

plug-in van bestandstype aan
toegevoegd de auteur shibly, de bron

Ik weet niet zeker of ik de vraag precies volg - zie je de uitvoer zoals bijvoorbeeld vooraf opgemaakte tekst, of bevat de bron-HTML die tags? Als de bron-HTML die tags heeft, moeten deze op nieuwe regels worden weergegeven, zelfs als ze niet in de regeleinden in de bron staan, toch?

Anyway, I'm guessing you're dealing with automatic string escaping. Check out this other Stack Overflow question Also, this: Katz talking about this feature

1
toegevoegd
Ik heb de oorspronkelijke vraag bewerkt, de vraag opnieuw bekeken om te begrijpen.
toegevoegd de auteur shibly, de bron