link_to(name, …) ist schön, wenn “name” wirklich nur ein einfacher
String oder image_tag ist. Wenn aber mehr in das … hinein
soll, dann wird es unübersichtlich und läuft auf Konkatenation von
Strings hinaus. Das muss eleganter gehen, ich habe nur keine gute Idee.
link_to(name, …) ist schön, wenn “name” wirklich nur ein einfacher
String oder image_tag ist. Wenn aber mehr in das … hinein
soll, dann wird es unübersichtlich und läuft auf Konkatenation von
Strings hinaus. Das muss eleganter gehen, ich habe nur keine gute Idee.
hier geht es doch mehr um so was wie nen bild, bzw. eben etwas
komplizierteres, als einfach nur einen string…
so was wie firstname middle_initial. lastname. im railscast wird gezeigt
wie es geht… #10 Refactoring User Name Part 1 - RailsCasts
wenn es nur um design oder so was geht, reicht natürlich auch :class =>
aber für alles andere würd ich helper machen…
link_to(name, …) ist schön, wenn “name” wirklich nur ein einfacher
String oder image_tag ist. Wenn aber mehr in das … hinein
soll, dann wird es unübersichtlich und läuft auf Konkatenation von
Strings hinaus. Das muss eleganter gehen, ich habe nur keine gute
Idee.
Warum drinnen und nicht draußen?
Oder (fast immer) noch besser, eine class vergeben?
On Mon, 19 Nov 2007 23:51:06 +0100
Michael S. [email protected] wrote:
link_to(name, …) ist schön, wenn “name” wirklich nur ein einfacher
String oder image_tag ist. Wenn aber mehr in das … hinein
soll, dann wird es unübersichtlich und läuft auf Konkatenation von
Strings hinaus. Das muss eleganter gehen, ich habe nur keine gute Idee.
link_to(name, …) ist schön, wenn “name” wirklich nur ein
einfacher String oder image_tag ist. Wenn aber mehr in das … hinein soll, dann wird es unübersichtlich und läuft auf
Konkatenation von Strings hinaus. Das muss eleganter gehen, ich
habe nur keine gute Idee.
Probiere es mit content_tag
link_to(content_tag(:b, “Test-Link”), dein_path)
Klar, das geht – gefällt mir aber nicht. Wenn da nämlich mehrere “Tags”
(also Elemente) hinein sollen, dann müsste ich content_tag(…) +
content_tag(…) schreiben, was ich unschön finde. Ja, ich könnte
dafür einen Helper schreiben, aber auch das will ich nicht.
Grundsätzlich möchte ich in RHTML die Struktur der vorher gehenden und
erzeugten HTML-Dateien nachvollziehen können, sofern nicht gerade sehr
gute Gründe für Abstraktion sprechen. Mit der vorher gehenden Datei
beziehe ich mich auf den Fall, dass jemand anders das Layout in HTML
vorgibt. Um daraus RHTML zu machen möchte ich dann eigentlich nur
ergänzen und einzelne Elemente austauschen, aber nicht alles
umkrempeln.
Klar, das geht – gefällt mir aber nicht. Wenn da nämlich mehrere “Tags”
(also Elemente) hinein sollen, dann müsste ich content_tag(…) +
content_tag(…) schreiben, was ich unschön finde. Ja, ich könnte dafür
einen Helper schreiben, aber auch das will ich nicht.
ich habe mittlerweile aufgegeben nachzufragen, warum jemand etwas
unbedingt so machen will, wie er sich das vorstellt. Ausserdem frage
ich auch nicht mehr nach Code-Snipplets, die einem vielleicht den
Kontext zeigen könnten. Beide Informationen sind oftmals ganz
hilfreich um die Fragestellung zu verstehen und elegante, wenn auch
gänzlich abweichende, Lösungsvorschläge zu liefern.
Also wenn Du weder mit content_tag noch mit Helpern arbeiten willst,
dann weiss ich auch nicht mehr weiter.
Es gibt noch content_for bzw capture, wenn es sich um wirklich viel
Content handelt der da reingezogen werden soll. Was ich mir aber bei nem
Link kaum vorstellen kann, daher => Helper! is auch am besten zum
wiederverwenden, wie ich finde.
(sorry sollten eigentlich ncur vier Zeilen sein)
kann man vielleicht noch huebscher benennen…
oder einfach link_to derart überschreiben dass es selber entscheidet ob
ein vorhandenes capture mit nem Link zu umschließen ist, oder eben das
normale link_to aufruft…
Klar, das geht – gefällt mir aber nicht. Wenn da nämlich mehrere
“Tags”
(also Elemente) hinein sollen, dann müsste ich content_tag(…) +
content_tag(…) schreiben, was ich unschön finde. Ja, ich könnte
dafür
einen Helper schreiben, aber auch das will ich nicht
Also wenn Du weder mit content_tag noch mit Helpern arbeiten willst,
dann weiss ich auch nicht mehr weiter.
mach doch die geschichte mit dem block helper, die morus und jens
vorschlagen. dabei umschliesst dein selbstgeschriebener helper
“link_to_with_block” den html-schnipsel, den du als link verwenden
möchtest. siehe z.b. das pdf “v is for vexing (patterns to dry up
your views)” von marcel molina. im template sähe das so aus:
dry up your views)" von marcel molina. im template sähe das so aus:
<% link_to_with_block(url_for(somewhere)) do %>
…
<% end %>
Das hatte ich schon von vornherein überlegt, aber gleich wieder
verworfen, weil es für link_to_function nicht funktionieren würde, da
dort der Block schon für den RJS-Code verwendet wird. Ansonsten wäre
das tatsächlich die schönste Lösung.
Am Tue, 20 Nov 2007 23:17:34 +0100 schrieb Michael S. [email protected]:
Das hatte ich schon von vornherein überlegt, aber gleich wieder
verworfen, weil es für link_to_function nicht funktionieren würde, da
dort der Block schon für den RJS-Code verwendet wird. Ansonsten wäre
das tatsächlich die schönste Lösung.
Richtige Antwort: Statt link_to_function eine JS-Behavior-Library
verwenden und doch die elegante link_to-Variante verwenden können
Am Tue, 20 Nov 2007 23:17:34 +0100 schrieb Michael S. [email protected]:
Das hatte ich schon von vornherein überlegt, aber gleich wieder
verworfen, weil es für link_to_function nicht funktionieren würde,
da dort der Block schon für den RJS-Code verwendet wird. Ansonsten
wäre das tatsächlich die schönste Lösung.
Richtige Antwort: Statt link_to_function eine JS-Behavior-Library
verwenden und doch die elegante link_to-Variante verwenden können
Einverstanden. Wenn ich kann, wie ich will, mache ich das.