Hallo,
eine interessante Frage (von einem Kunden), auf die ich bisher noch
keine Antwort gefunden habe.
Im ERb habe ich sowas:
<% for page in pages
variable = page.title
variable += page.author.name
variable += page.published_at
??? variable
end %>
(dass das jetzt nicht unbedingt Sinn macht, sei mal dahingestellt,
aber so ähnlich war der Fall gerade)
Und da wo das ??? steht, soll eine Funktion hin, die mir die variable
ausgibt. Es kann doch nicht, dass ich vorher mit %> schließen muss, um
ein <%= variable %> benutzen zu können? Habe auch gesucht, aber außer dem
hier
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/155581
hatte ich nichts gefunden.
Danke,
Beate
Sorry, noch was vergessen:
puts/print hatte ich natürlich getestet, aber das müllt nur das Logfile voll 
Beate
Hallo Beate,
versuche mal:
<% …
_erbout << variable.to_s;
%>
Gruß,
Thomas
Am 06.10.2008 um 18:39 schrieb Beate P.:
Thomas B.
b-simple.de - Ruby on Rails - Entwicklung & Training
Bei den Mühren 70, 20457 Hamburg
+49 (173) 2391143 - thomas.baustert(at)b-simple.de
Umsatzsteuer-Identifikationsnummer: DE814405137
Hallo Thomas,
2008/10/6 Thomas B. [email protected]:
versuche mal:
<% …
_erbout << variable.to_s;
%>
Das tut, vielen Dank! Da wäre ich aber auch nicht draufgekommen 
GrüßeBeate
On Monday 06 October 2008, Beate P. wrote:
end %>
(dass das jetzt nicht unbedingt Sinn macht, sei mal dahingestellt,
aber so ähnlich war der Fall gerade)
Und da wo das ??? steht, soll eine Funktion hin, die mir die variable
ausgibt. Es kann doch nicht, dass ich vorher mit %> schließen muss,
um ein <%= variable %> benutzen zu können?
Siehe concat (und Kernel#binding)
concat(variable, binding)
Das geht, aber du solltest es so nicht machen. Die Funktionalität gehört
nicht in einen View, eher in ein oder mehrere Helper-Methoden.
def format_page_title(page)
“#{page.title}#{page.author.name}#{page.published_at}”
end
Und dann
<%= pages.map { |p| format_page_title(p) }.join %>
Michael
–
Michael S.
mailto:[email protected]
http://www.schuerig.de/michael/