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:
parent
8f5b94beb1
commit
cadbb35977
1 changed files with 76 additions and 10 deletions
|
@ -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
|
||||
|
|
Loading…
Add table
Reference in a new issue