ERb i tagi

Ma ktos moze pomysl jak to sprawniej zapisa w erb ?

http://pastie.org/544092

Zrób helper, na przyklad jak chcesz otoczyć divem:

def div(&block) content = capture(&block) div = content_tag(:div, content) concat(div) end
i w erb:

<% div do %> coś co będzie otoczone divem <% end %>
UPDATE:
oczywiście przykład z divem jest raczej bez sensu, ale wiadomo - chodzi o pokazanie mechanizmu :wink:

Fakt, nie wpadłem na to, bo w sumie uzywam pezposrednio ERb, ale to nie problem.

Jeżeli to czysty erb bez railsów, to looknij jak to jest rozwiązane w merbie, tam jest syntax:

<%= foobar do %> ... <% end =%>

Fajny post w tym temacie: http://yehudakatz.com/2009/08/31/simplifying-rails-block-helpers-with-a-side-of-rubinius/

@page_title powinno być chyba raczej ustawiane w kontrolerze a nie w widoku

zastanów się nad HAML:

[code=haml]= @page_title
.page
#ticket_dispatcher_error_messages
== #{erb_c oncat} error_messages_for(’#{singular_name}’) #{erb_end}

  • form_tag(:action => :create) do

i tak dalej[/code]

@page_title to element prezentacyjny więc powinien być ustawiony w widoku a nie w kontrolerze :slight_smile:

… no chyba że można go łatwo i wygodnie ustawić w jakimś filtrze w kontrolerze :wink:
(dyskusja religijna, fuck yeah! :smiley: )

To minus użycia MVC do budowy aplikacji webowych. W kontrolerze spraw widokowych być nie winno.

Inaczej gdybyśmy bazowali na pojęciu resource. Nie ma wtedy kontrolerów, są resources. A resource ma różne reprezentacje, wie którą wybrać i co jej przekazać - choćby fragment page title. Gdyby nie było kontrolerów a tylko resource. Jakie to by było… czyste!

You said it brother!

…z innej beczki: REKLAMA! http://github.com/bragi/site_meta/tree/master