1
0
Fork 0
mirror of https://github.com/sinatra/sinatra synced 2023-03-27 23:18:01 -04:00

explain how to use :layout_engine in russian README, typo

This commit is contained in:
Vasily Polovnyov 2011-01-17 17:14:18 +03:00
parent 8f5b94beb1
commit cadbb35977

View file

@ -350,7 +350,7 @@ Sinatra — это предметно-ориентированный язык (D
расширениями).
В Markdown невозможно вызывать методы или передавать локальные переменные.
Следовательно, вам скорее всего придется использовать этот шаблон совместно с другим
Следовательно, вам, скорее всего, придется использовать этот шаблон совместно с другим
движком рендеринга:
erb :overview, :locals => { :text => markdown(:introduction) }
@ -360,6 +360,28 @@ Sinatra — это предметно-ориентированный язык (D
%h1 Hello From Haml!
%p= markdown(:greetings)
Вы не можете вызывать Ruby из Markdown, соответственно, вы не можете использовать
лэйаут-шаблоны (layouts) на Markdown. Тем не менее, есть возможность использовать один
движок рендеринга для шаблона, а другой для лэйаута с помощью опции `:layout_engine`:
get '/' do
markdown :index, :layout_engine => :erb
end
Отрисует <tt>./views/index.md</tt> с <tt>./views/layout.erb</tt> в качестве
лэйаута.
Также вы можете задать такие опции рендеринга глобально:
set :markdown, :layout_engine => :haml, :layout => :post
get '/' do
markdown :index
end
Отрисует <tt>./views/index.md</tt> (и любой другой шаблон на Markdown) с
<tt>./views/post.haml</tt> в качестве лэйаута.
Также возможно обрабатывать Markdown с помощью BlueCloth, а не RDiscount:
require 'bluecloth'
@ -387,8 +409,8 @@ Sinatra — это предметно-ориентированный язык (D
Отрисует <tt>./views/index.textile</tt>.
В textile невозможно вызывать методы или передавать локальные переменные. Следовательно, вам скорее всего придется
использовать этот шаблон совместно с другим движком рендеринга:
В Textile невозможно вызывать методы или передавать локальные переменные. Следовательно, вам, скорее всего,
придется использовать этот шаблон совместно с другим движком рендеринга:
erb :overview, :locals => { :text => textile(:introduction) }
@ -397,6 +419,28 @@ Sinatra — это предметно-ориентированный язык (D
%h1 Hello From Haml!
%p= textile(:greetings)
Вы не можете вызывать Ruby из Textile, соответственно, вы не можете использовать
лэйаут-шаблоны на Textile. Тем не менее, есть возможность использовать один
движок рендеринга для шаблона, а другой для лэйаута с помощью опции `:layout_engine`:
get '/' do
textile :index, :layout_engine => :erb
end
Отрисует <tt>./views/index.textile</tt> с <tt>./views/layout.erb</tt> в качестве
лэйаута.
Также вы можете задать такие опции рендеринга глобально:
set :textile, :layout_engine => :haml, :layout => :post
get '/' do
textile :index
end
Отрисует <tt>./views/index.textile</tt> (и любой другой шаблон на Textile) с
<tt>./views/post.haml</tt> в качестве лэйаута.
=== RDoc шаблоны
<tt>rdoc</tt> gem/библиотека необходима для рендеринга RDoc шаблонов:
@ -410,8 +454,8 @@ Sinatra — это предметно-ориентированный язык (D
Отрисует <tt>./views/index.rdoc</tt>.
В rdoc невозможно вызывать методы или передавать локальные переменные. Следовательно, вам скорее всего придется
использовать этот шаблон совместно с другим движком рендеринга:
В RDoc невозможно вызывать методы или передавать локальные переменные. Следовательно, вам, скорее всего,
придется использовать этот шаблон совместно с другим движком рендеринга:
erb :overview, :locals => { :text => rdoc(:introduction) }
@ -420,6 +464,28 @@ Sinatra — это предметно-ориентированный язык (D
%h1 Hello From Haml!
%p= rdoc(:greetings)
Вы не можете вызывать Ruby из RDoc, соответственно, вы не можете использовать
лэйаут-шаблоны на RDoc. Тем не менее, есть возможность использовать один
движок рендеринга для шаблона, а другой для лэйаута с помощью опции `:layout_engine`:
get '/' do
rdoc :index, :layout_engine => :erb
end
Отрисует <tt>./views/index.rdoc</tt> с <tt>./views/layout.erb</tt> в качестве
лэйаута.
Также вы можете задать такие опции рендеринга глобально:
set :rdoc, :layout_engine => :haml, :layout => :post
get '/' do
rdoc :index
end
Отрисует <tt>./views/index.rdoc</tt> (и любой другой шаблон на RDoc) с
<tt>./views/post.haml</tt> в качестве лэйаута.
=== Radius шаблоны
<tt>radius</tt> gem/библиотека необходима для рендеринга Radius шаблонов:
@ -502,8 +568,8 @@ Sinatra — это предметно-ориентированный язык (D
=== Доступ к переменным в шаблонах
Шаблоны интерпретируются в том же контексте, что и обработчики маршрутов. Переменные экзмепляра,
установленные в процесе обработки маршрутов, будут доступны напрямую в шаблонах:
Шаблоны интерпретируются в том же контексте, что и обработчики маршрутов. Переменные экземпляра,
установленные в процессе обработки маршрутов, будут доступны напрямую в шаблонах:
get '/:id' do
@foo = Foo.find(params[:id])
@ -517,7 +583,7 @@ Sinatra — это предметно-ориентированный язык (D
haml '%h1= foo.name', :locals => { :foo => foo }
end
Это обычно используется когда шаблоны рендерятся как частные (partials) из других шаблонов.
Это обычный подход, когда шаблоны рендерятся как частные (partials) из других шаблонов.
=== Вложенные шаблоны
@ -538,7 +604,7 @@ Sinatra — это предметно-ориентированный язык (D
@@ index
%div.title Hello world!!!!!
Заметьте: Вложенные шаблоны, определенные в файле-исходнике, который подключил sinatra, будут
Заметьте: Вложенные шаблоны, определенные в файле-исходнике, который подключил Sinatra, будут
автоматически загружены. Вызовите <tt>enable :inline_templates</tt> напрямую, если у вас вложенные
шаблоны в других файлах.
@ -559,7 +625,7 @@ Sinatra — это предметно-ориентированный язык (D
end
Если шаблон с именем "layout" существует, то он будет использован каждый раз,
когда шаблоны будут отрисовываться. Вы можете отключать layout-шаблон в каждом конкретном случае с помощью
когда шаблоны будут отрисовываться. Вы можете отключать лэйаут в каждом конкретном случае с помощью
<tt>:layout => false</tt> или отключить его для всего приложения, например, так: <tt>set :haml, :layout => false</tt>.
get '/' do