more fixes for russian README
Signed-off-by: Konstantin Haase <konstantin.mailinglists@googlemail.com>
This commit is contained in:
parent
9357487056
commit
e6cf5b30d7
|
@ -69,7 +69,7 @@ Sinatra — это предметно-ориентированный язык (D
|
|||
params[:splat] # => ["path/to/file", "xml"]
|
||||
end
|
||||
|
||||
Маршруты также могут использовать регулярные выражение в качестве шаблона URL:
|
||||
Маршруты также могут использовать регулярные выражения в качестве шаблона URL:
|
||||
|
||||
get %r{/hello/([\w]+)} do
|
||||
"Hello, #{params[:captures].first}!"
|
||||
|
@ -122,8 +122,8 @@ Sinatra — это предметно-ориентированный язык (D
|
|||
=== Возвращаемые значения
|
||||
|
||||
Возвращаемое значение блока маршрута ограничивается телом ответа, которое будет передано HTTP клиенту,
|
||||
или следующей подпрограммой (middleware) в Rack стеке. Чаще всего это строка, как в выше изложенных примерах.
|
||||
Но и другие значения также приемлимы.
|
||||
или следующей подпрограммой (middleware) в Rack стеке. Чаще всего это строка, как в вышеизложенных примерах.
|
||||
Но и другие значения также приемлемы.
|
||||
|
||||
Вы можете вернуть любой объект, который будет либо корректным Rack ответом, Rack
|
||||
телом ответа, либо кодом состояния HTTP:
|
||||
|
@ -163,7 +163,7 @@ Sinatra — это предметно-ориентированный язык (D
|
|||
|
||||
Важно помнить, что вы всегда должны указывать шаблоны
|
||||
с помощью символов, даже если это подкаталог (в этом случае
|
||||
успользуйте <tt>:'subdir/template'</tt>). Вы должны использовать
|
||||
используйте <tt>:'subdir/template'</tt>). Вы должны использовать
|
||||
символ, иначе методы, ответственные за рендеринг, отобразят просто переданную им строку.
|
||||
|
||||
=== Haml шаблоны
|
||||
|
@ -181,7 +181,7 @@ Haml gem/библиотека необходима для рендеринга H
|
|||
|
||||
{Опции Haml}[http://haml-lang.com/docs/yardoc/file.HAML_REFERENCE.html#options]
|
||||
могут быть установлены глобально через конфигурацию Sinatra,
|
||||
посмотрите {Опции и Конфигурация}[http://www.sinatrarb.com/configuration.html],
|
||||
см. {Опции и Конфигурация}[http://www.sinatrarb.com/configuration.html],
|
||||
и переопределены локально.
|
||||
|
||||
set :haml, :format => :html5 # :xhtml - Haml формат по умолчанию
|
||||
|
@ -256,7 +256,7 @@ Haml gem/библиотека необходима для рендеринга S
|
|||
|
||||
{Опции Sass}[http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html#options]
|
||||
могут быть установлены глобально через конфигурацию Sinatra,
|
||||
посмотрите {Опции и Конфигурация}[http://www.sinatrarb.com/configuration.html],
|
||||
см. {Опции и Конфигурация}[http://www.sinatrarb.com/configuration.html],
|
||||
и переопределены локально.
|
||||
|
||||
set :sass, :style => :compact # :nested - стиль Sass по умолчанию
|
||||
|
@ -280,7 +280,7 @@ Haml gem/библиотека необходима для рендеринга S
|
|||
|
||||
{Опции Scss}[http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html#options]
|
||||
могут быть установлены глобально через конфигурацию Sinatra,
|
||||
посмотрите {Опции и Конфигурация}[http://www.sinatrarb.com/configuration.html],
|
||||
см. {Опции и Конфигурация}[http://www.sinatrarb.com/configuration.html],
|
||||
и переопределены локально.
|
||||
|
||||
set :scss, :style => :compact # :nested - стиль Scss по умолчанию
|
||||
|
@ -334,7 +334,7 @@ rdiscount gem/библиотека необходима для рендерин
|
|||
Отрисует <tt>./views/index.markdown</tt> (+md+ и +mkd+ также являются допустимыми файловыми
|
||||
расширениями).
|
||||
|
||||
В markdown невозможно вызывать методы или передавать локальные переменные. Следовательно вам скорее всего прийдется
|
||||
В markdown невозможно вызывать методы или передавать локальные переменные. Следовательно, вам скорее всего придется
|
||||
использовать этот шаблон совместно с другим движком рендеринга:
|
||||
|
||||
erb :overview, :locals => { :text => markdown(:introduction) }
|
||||
|
@ -357,7 +357,7 @@ RedCloth gem/библиотека необходима для рендеринг
|
|||
|
||||
Отрисует <tt>./views/index.textile</tt>.
|
||||
|
||||
В textile невозможно вызывать методы или передавать локальные переменные. Следовательно вам скорее всего прийдется
|
||||
В textile невозможно вызывать методы или передавать локальные переменные. Следовательно, вам скорее всего придется
|
||||
использовать этот шаблон совместно с другим движком рендеринга:
|
||||
|
||||
erb :overview, :locals => { :text => textile(:introduction) }
|
||||
|
@ -380,7 +380,7 @@ RDoc gem/библиотека необходима для рендеринга R
|
|||
|
||||
Отрисует <tt>./views/index.rdoc</tt>.
|
||||
|
||||
В rdoc невозможно вызывать методы или передавать локальные переменные. Следовательно вам скорее всего прийдется
|
||||
В rdoc невозможно вызывать методы или передавать локальные переменные. Следовательно, вам скорее всего придется
|
||||
использовать этот шаблон совместно с другим движком рендеринга:
|
||||
|
||||
erb :overview, :locals => { :text => rdoc(:introduction) }
|
||||
|
@ -486,7 +486,7 @@ coffee-script gem/библиотека и `coffee` бинарный файл н
|
|||
|
||||
=== Именные шаблоны
|
||||
|
||||
Шаблоны также могут быть определены используя <tt>template</tt> метод:
|
||||
Шаблоны также могут быть определены, используя <tt>template</tt> метод:
|
||||
|
||||
template :layout do
|
||||
"%html\n =yield\n"
|
||||
|
@ -544,7 +544,7 @@ After-фильтры выполняются после каждого запро
|
|||
puts response.status
|
||||
end
|
||||
|
||||
Фильтры могут использовать шаблоны URL и будут интерпретированы только, если путь запроса совпадет с этим шаблоном:
|
||||
Фильтры могут использовать шаблоны URL и будут интерпретированы, только если путь запроса совпадет с этим шаблоном:
|
||||
|
||||
before '/protected/*' do
|
||||
authenticate!
|
||||
|
@ -556,7 +556,7 @@ After-фильтры выполняются после каждого запро
|
|||
|
||||
== Прерывание
|
||||
|
||||
Чтобы незамедлительно прервать обработку запроса внутри фильтра или маршрута используйте:
|
||||
Чтобы незамедлительно прервать обработку запроса внутри фильтра или маршрута, используйте:
|
||||
|
||||
halt
|
||||
|
||||
|
@ -720,7 +720,7 @@ Sinatra устанавливает специальные <tt>not_found</tt> и
|
|||
|
||||
== Mime типы
|
||||
|
||||
Когда используете <tt>send_file</tt> или статические файлы, у вас могут быть mime типы которые Sinatra,
|
||||
Когда вы используете <tt>send_file</tt> или статические файлы, у вас могут быть mime типы, которые Sinatra
|
||||
не понимает по умолчанию. Используйте +mime_type+ для их регистрации по расширению файла:
|
||||
|
||||
mime_type :foo, 'text/foo'
|
||||
|
@ -759,8 +759,8 @@ Rack::Builder[http://rack.rubyforge.org/doc/classes/Rack/Builder.html] DSL
|
|||
end
|
||||
|
||||
Rack распространяется с различными стандартными подпрограммами
|
||||
для логирования, дебагинга, маршрутизации URL, аутентификации, обработки сессий. Sinatra использует
|
||||
многие из этих компонентов автоматически, основываясь на конфигурации, чтобы вам не проходилось
|
||||
для логирования, отладки, маршрутизации URL, аутентификации, обработки сессий. Sinatra использует
|
||||
многие из этих компонентов автоматически, основываясь на конфигурации, чтобы вам не приходилось
|
||||
регистрировать/использовать (+use+) их вручную.
|
||||
|
||||
== Тестирование
|
||||
|
@ -796,17 +796,17 @@ Rack распространяется с различными стандартн
|
|||
end
|
||||
|
||||
Заметьте: Встроенные модули Sinatra::Test и Sinatra::TestHarness являются
|
||||
устаревшими начиная с 0.9.2 релиза.
|
||||
устаревшими, начиная с 0.9.2 релиза.
|
||||
|
||||
== Sinatra::Base - Подпрограммы, библиотеки и модульные приложения
|
||||
|
||||
Описание своего приложения самым простейшим способом (с помощью DSL верхнего уровня, как в примерах выше)
|
||||
работает отлично для крохотных приложений, но имеет множество недостатков, когда надо
|
||||
создать компоненты такие как Rack
|
||||
создать компоненты, такие как Rack
|
||||
middleware, Rails metal, простые библиотеки с серверными компонентами,
|
||||
Sinatra расширения.
|
||||
DSL верхнего уровня загрязняет пространство имен <tt>Object</tt> и подразумевает стиль конфигурации
|
||||
микро приложения (например, единый файл приложения, ./public и
|
||||
микро-приложения (например, единый файл приложения, ./public и
|
||||
./views директории, создание логов, страницу деталей об исключениях
|
||||
и т.д.). И тут на помощь приходит Sinatra::Base:
|
||||
|
||||
|
@ -828,12 +828,12 @@ Rack подпрограммы, Rack приложения, Rails metal. Вы мо
|
|||
|
||||
MyApp.run! :host => 'localhost', :port => 9090
|
||||
|
||||
Методы доступные Sinatra::Base сабклассам идентичны тем, что доступны
|
||||
Методы, доступные Sinatra::Base сабклассам идентичны тем, что доступны
|
||||
в DSL верхнего уровня. Большинство приложений верхнего уровня могут быть
|
||||
конвертированы в Sinatra::Base компоненты с помощью двух модификаций:
|
||||
|
||||
* Вы должны подключать +sinatra/base+ вместо +sinatra+;
|
||||
иначе, все методы предоставляемые Sinatra будут импортированные в глобальное пространство имен.
|
||||
* Вы должны подключать +sinatra/base+ вместо +sinatra+,
|
||||
иначе все методы предоставляемые Sinatra будут импортированные в глобальное пространство имен.
|
||||
* Поместите все маршруты, обработчики ошибок, фильтры и опции в сабкласс Sinatra::Base.
|
||||
|
||||
<tt>Sinatra::Base</tt> — это чистый лист. Большинство опций, включая встроенный сервер, по умолчанию отключены.
|
||||
|
@ -844,7 +844,7 @@ Rack подпрограммы, Rack приложения, Rails metal. Вы мо
|
|||
|
||||
Не только сама Sinatra может использовать подпрограммы Rack, любое Sinatra приложение
|
||||
само может быть добавлено к любому Rack эндпоинту в качестве подпрограммы. Этим эндпоинтом
|
||||
может быть другое Sinatra приложение или приложение, основанное на Rack (Rails/Ramaze/Camping/...).
|
||||
может быть другое Sinatra приложение, или приложение, основанное на Rack (Rails/Ramaze/Camping/...).
|
||||
|
||||
require 'sinatra/base'
|
||||
|
||||
|
@ -877,7 +877,7 @@ Rack подпрограммы, Rack приложения, Rails metal. Вы мо
|
|||
|
||||
== Области видимости и привязка
|
||||
|
||||
Текущая область видимости определяет методы и переменные доступные
|
||||
Текущая область видимости определяет методы и переменные, доступные
|
||||
в данный момент.
|
||||
|
||||
=== Область видимости приложения / класса
|
||||
|
@ -919,8 +919,8 @@ Sinatra::Application, иначе это будет сабкласс, котор
|
|||
Для каждого входящего запроса будет создан новый экземпляр вашего приложения,
|
||||
и все блоки обработчика будут запущены в этом контексте. В этой области
|
||||
видимости вам доступны `request` и `session` объекты, вызовы методов
|
||||
рендеринга такие как `erb` или `haml`. Вы можете получить доступ к
|
||||
области видимости приложения из контекста запроса используя помощник `settings`:
|
||||
рендеринга, такие как `erb` или `haml`. Вы можете получить доступ к
|
||||
области видимости приложения из контекста запроса, используя помощник `settings`:
|
||||
|
||||
class MyApp << Sinatra::Base
|
||||
# Я в области видимости приложения!
|
||||
|
@ -946,11 +946,11 @@ Sinatra::Application, иначе это будет сабкласс, котор
|
|||
|
||||
=== Область видимости делегирования
|
||||
|
||||
Область видимости делегирования просто переправляет методы в область видимости класса.
|
||||
Область видимости делегирования просто перенаправляет методы в область видимости класса.
|
||||
Однако, оно не полностью на 100% ведет себя как область видимости класса,
|
||||
так как у вас нету привязки к классу: только методы, явно помеченные для
|
||||
делегирования, будут доступны, а переменных/состояний области видимости класса
|
||||
не будет (иначе говоря: у вас будет другой `self` объект). Вы можете
|
||||
не будет (иначе говоря, у вас будет другой `self` объект). Вы можете
|
||||
непосредственно добавить методы делегирования, используя
|
||||
<tt>Sinatra::Delegator.delegate :method_name</tt>.
|
||||
|
||||
|
|
Loading…
Reference in New Issue