LINUX.ORG.RU

sinatra & haml

 , ,


0

3

Доброго дня господа.
Вот играюсь с феймвоком.
Всё замечательно, только имею непонятку с передачей haml страничке данных.
Пример 1:

#имеем приложение на синатре
get '/' do
    @test_var = "test message"
    haml :index
end

Пример 2:

get '/' do
    test_var = "test message"
    haml :index, :locals => { :test_var => test_var }
end

Это работает без проблем, да, мы можем в хамл"е вызывать @test_var.
Но что если я хочу передать, скажем, много переменных и данных?
Как это принято делать положенным методом?

PS: Ну вот есть предположение что можно было бы писать сами скрипты в haml'e, но это вроде как не по красоте ж?
ЗЗЫ: заранее спасибо адекватно ответившим

★★★

Последнее исправление: Spirit_of_Stallman (всего исправлений: 1)

Ответ на: комментарий от kelyar

обьяви их instance variables, как в примере 1.

С большими и разнообразными данными этот вариант вообще не радостный :(

или засунь в один общий хэш.

А вот этого не понял. Можно подробней, пожалуйста?

Spirit_of_Stallman ★★★
() автор топика
Ответ на: комментарий от Spirit_of_Stallman
{
  :test_var => test_var,
  :cat => ":3" 
}

Ванга-мод.

anonymous
()

Но что если я хочу передать, скажем, много переменных и данных?

В :locals передаётся обычный хэш, в который можно запихивать сколько угодно пар key-value.

spyro
()
Ответ на: комментарий от spyro

В :locals передаётся обычный хэш, в который можно запихивать сколько угодно пар key-value.

Видимо пока что вынужден буду пользовать тот не самый красивый метод.
Спасибо за ответ.

Spirit_of_Stallman ★★★
() автор топика
Ответ на: комментарий от Spirit_of_Stallman

Чем он некрасив? Ты передаешь в шаблонизатор объект со всем, что нужно.

tensai_cirno ★★★★★
()

Но что если я хочу передать, скажем, много переменных и данных?

это считается плохим тоном.

special-k ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.