mirror of
https://github.com/sinatra/sinatra
synced 2023-03-27 23:18:01 -04:00
commit
34cf2da63c
2 changed files with 86 additions and 0 deletions
85
README.ko.md
85
README.ko.md
|
@ -54,11 +54,13 @@ thin이 설치되어 있을 경우 Sinatra는 thin을 통해 실행합니다.
|
||||||
* [Markdown 템플릿](#markdown-템플릿)
|
* [Markdown 템플릿](#markdown-템플릿)
|
||||||
* [Textile 템플릿](#textile-템플릿)
|
* [Textile 템플릿](#textile-템플릿)
|
||||||
* [RDoc 템플릿](#rdoc-템플릿)
|
* [RDoc 템플릿](#rdoc-템플릿)
|
||||||
|
* [AsciiDoc 템플릿](#asciidoc-템플릿)
|
||||||
* [Radius 템플릿](#radius-템플릿)
|
* [Radius 템플릿](#radius-템플릿)
|
||||||
* [Markaby 템플릿](#markaby-템플릿)
|
* [Markaby 템플릿](#markaby-템플릿)
|
||||||
* [RABL 템플릿](#rabl-템플릿)
|
* [RABL 템플릿](#rabl-템플릿)
|
||||||
* [Slim 템플릿](#slim-템플릿)
|
* [Slim 템플릿](#slim-템플릿)
|
||||||
* [Creole 템플릿](#creole-템플릿)
|
* [Creole 템플릿](#creole-템플릿)
|
||||||
|
* [MediaWiki 템플릿](#mediawiki-템플릿)
|
||||||
* [CoffeeScript 템플릿](#coffeescript-템플릿)
|
* [CoffeeScript 템플릿](#coffeescript-템플릿)
|
||||||
* [Stylus 템플릿](#stylus-템플릿)
|
* [Stylus 템플릿](#stylus-템플릿)
|
||||||
* [Yajl 템플릿](#yajl-템플릿)
|
* [Yajl 템플릿](#yajl-템플릿)
|
||||||
|
@ -69,6 +71,7 @@ thin이 설치되어 있을 경우 Sinatra는 thin을 통해 실행합니다.
|
||||||
* [이름을 가지는 템플릿(Named Templates)](#이름을-가지는-템플릿named-templates)
|
* [이름을 가지는 템플릿(Named Templates)](#이름을-가지는-템플릿named-templates)
|
||||||
* [파일 확장자 연결하기](#파일-확장자-연결하기)
|
* [파일 확장자 연결하기](#파일-확장자-연결하기)
|
||||||
* [나만의 고유한 템플릿 엔진 추가하기](#나만의-고유한-템플릿-엔진-추가하기)
|
* [나만의 고유한 템플릿 엔진 추가하기](#나만의-고유한-템플릿-엔진-추가하기)
|
||||||
|
* [템플릿 검사를 위한 커스텀 로직 사용하기](#템플릿-검사를-위한-커스텀-로직-사용하기)
|
||||||
* [필터(Filters)](#필터filters)
|
* [필터(Filters)](#필터filters)
|
||||||
* [헬퍼(Helpers)](#헬퍼helpers)
|
* [헬퍼(Helpers)](#헬퍼helpers)
|
||||||
* [세션(Sessions) 사용하기](#세션sessions-사용하기)
|
* [세션(Sessions) 사용하기](#세션sessions-사용하기)
|
||||||
|
@ -223,6 +226,17 @@ get '/posts.?:format?' do
|
||||||
end
|
end
|
||||||
```
|
```
|
||||||
|
|
||||||
|
쿼리 파라메터로도 이용가능 합니다.
|
||||||
|
|
||||||
|
``` ruby
|
||||||
|
get '/posts' do
|
||||||
|
# matches "GET /posts?title=foo&author=bar"
|
||||||
|
title = params[:title]
|
||||||
|
author = params[:author]
|
||||||
|
# uses title and author variables; query is optional to the /posts route
|
||||||
|
end
|
||||||
|
```
|
||||||
|
|
||||||
한편, 경로 탐색 공격 방지(path traversal attack protection, 아래 참조)를 비활성화시키지 않았다면,
|
한편, 경로 탐색 공격 방지(path traversal attack protection, 아래 참조)를 비활성화시키지 않았다면,
|
||||||
요청 경로는 라우터와 매칭되기 이전에 수정될 수 있습니다.
|
요청 경로는 라우터와 매칭되기 이전에 수정될 수 있습니다.
|
||||||
|
|
||||||
|
@ -761,6 +775,26 @@ RDoc에서 루비를 호출할 수 없기 때문에, RDoc으로 작성된 레이
|
||||||
사용할 수 없습니다. 하지만, `:layout_engine` 옵션으로 레이아웃의 템플릿을
|
사용할 수 없습니다. 하지만, `:layout_engine` 옵션으로 레이아웃의 템플릿을
|
||||||
다른 렌더링 엔진으로 렌더링 할 수는 있습니다.
|
다른 렌더링 엔진으로 렌더링 할 수는 있습니다.
|
||||||
|
|
||||||
|
#### AsciiDoc 템플릿
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td>의존성</td>
|
||||||
|
<td><a href="http://asciidoctor.org/" title="Asciidoctor">Asciidoctor</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>파일 확장자</td>
|
||||||
|
<td><tt>.asciidoc</tt>, <tt>.adoc</tt> and <tt>.ad</tt></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>예제</td>
|
||||||
|
<td><tt>asciidoc :README, :layout_engine => :erb</tt></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
AsciiDoc 템플릿에서는 루비 메서드를 호출할 수 없기
|
||||||
|
때문에, 거의 대부분의 경우 locals를 전달해야 합니다.
|
||||||
|
|
||||||
#### Radius 템플릿
|
#### Radius 템플릿
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
|
@ -869,6 +903,41 @@ Creole에서 루비를 호출할 수 없기 때문에, Creole으로 작성된
|
||||||
사용할 수 없습니다. 하지만, `:layout_engine` 옵션으로 레이아웃의 템플릿을
|
사용할 수 없습니다. 하지만, `:layout_engine` 옵션으로 레이아웃의 템플릿을
|
||||||
다른 렌더링 엔진으로 렌더링 할 수는 있습니다.
|
다른 렌더링 엔진으로 렌더링 할 수는 있습니다.
|
||||||
|
|
||||||
|
#### MediaWiki 템플릿
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td>의존성</td>
|
||||||
|
<td><a href="https://github.com/nricciar/wikicloth" title="WikiCloth">WikiCloth</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>파일 확장자</td>
|
||||||
|
<td><tt>.mediawiki</tt> and <tt>.mw</tt></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>예제</td>
|
||||||
|
<td><tt>mediawiki :wiki, :layout_engine => :erb</tt></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
MediaWiki 마크업에서는 메서드 호출 뿐 아니라 locals 전달도 안됩니다
|
||||||
|
따라서 일반적으로는 다른 렌더링 엔진과 함께 사용하게 됩니다.
|
||||||
|
|
||||||
|
``` ruby
|
||||||
|
erb :overview, :locals => { :text => mediawiki(:introduction) }
|
||||||
|
```
|
||||||
|
|
||||||
|
다른 템플릿 속에서 `mediawiki` 메서드를 호출할 수도 있습니다.
|
||||||
|
|
||||||
|
``` ruby
|
||||||
|
%h1 Hello From Haml!
|
||||||
|
%p= mediawiki(:greetings)
|
||||||
|
```
|
||||||
|
|
||||||
|
MediaWiki에서 루비를 호출할 수 없기 때문에, MediaWiki으로 작성된 레이아웃은
|
||||||
|
사용할 수 없습니다. 하지만, `:layout_engine` 옵션으로 레이아웃의 템플릿을
|
||||||
|
다른 렌더링 엔진으로 렌더링 할 수는 있습니다.
|
||||||
|
|
||||||
#### CoffeeScript 템플릿
|
#### CoffeeScript 템플릿
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
|
@ -1131,6 +1200,22 @@ end
|
||||||
위 코드는 `./views/index.myat` 를 렌더합니다.
|
위 코드는 `./views/index.myat` 를 렌더합니다.
|
||||||
Tilt에 대한 더 자세한 내용은 https://github.com/rtomayko/tilt 참조하세요.
|
Tilt에 대한 더 자세한 내용은 https://github.com/rtomayko/tilt 참조하세요.
|
||||||
|
|
||||||
|
### 템플릿 검사를 위한 커스텀 로직 사용하기
|
||||||
|
|
||||||
|
고유한 템플릿 룩업을 구현하기 위해서는 `#find_template` 메서드를 만드셔야 합니다.
|
||||||
|
|
||||||
|
``` ruby
|
||||||
|
configure do
|
||||||
|
set :views [ './views/a', './views/b' ]
|
||||||
|
end
|
||||||
|
|
||||||
|
def find_template(views, name, engine, &block)
|
||||||
|
Array(views).each do |v|
|
||||||
|
super(v, name, engine, &block)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
```
|
||||||
|
|
||||||
## 필터(Filters)
|
## 필터(Filters)
|
||||||
|
|
||||||
사전 필터(before filter)는 라우터와 동일한 맥락에서 매 요청 전에 평가되며
|
사전 필터(before filter)는 라우터와 동일한 맥락에서 매 요청 전에 평가되며
|
||||||
|
|
|
@ -69,6 +69,7 @@ pick up if available.
|
||||||
* [Named Templates](#named-templates)
|
* [Named Templates](#named-templates)
|
||||||
* [Associating File Extensions](#associating-file-extensions)
|
* [Associating File Extensions](#associating-file-extensions)
|
||||||
* [Adding Your Own Template Engine](#adding-your-own-template-engine)
|
* [Adding Your Own Template Engine](#adding-your-own-template-engine)
|
||||||
|
* [Using Custom Logic for Template Lookup](#using-custom-logic-for-template-lookup)
|
||||||
* [Filters](#filters)
|
* [Filters](#filters)
|
||||||
* [Helpers](#helpers)
|
* [Helpers](#helpers)
|
||||||
* [Using Sessions](#using-sessions)
|
* [Using Sessions](#using-sessions)
|
||||||
|
|
Loading…
Reference in a new issue