Ma ktos moze pomysl jak to sprawniej zapisa w erb ?
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
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
… no chyba że można go łatwo i wygodnie ustawić w jakimś filtrze w kontrolerze
(dyskusja religijna, fuck yeah! )
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