注意: このページは最後に更新されてから
2637 日が経過している記事です。
文章が腐敗している可能性があります。その点を考慮した上で確認ください。
Sinatra
提供: kimoto's wiki
目次
ソースいじったら自動でサーバーをリスタート
require 'sinatra/reloader'
class YourApp < Sinatra::Base
register Sinatra::Reloader
end
これだとproduction時でもこれが有効になってしまって重くてつらいので、
configure :development do
register Sinatra::Reloader
end
とするとよい。shotgunというコマンド(gem)があるけど、あれはすごい重いので使わない方がよい。Sinatra::Reloaderは軽いし使いやすい!
デフォルトでエスケープさせる
require 'erubis'
set :erb, :escape_html => true # デフォルトでHTML文字列をエスケープ
自動エスケープ時にエスケープしない
<%== "<b>test</b>" %>
みたいな感じで
余計なHTTPヘッダを消す
人によるだろうけどデフォルトでついてるProtection関係のHTTPヘッダを消す方法
disable :protection # 余計なヘッダ消すため(x-frame-optionsとか)
ソースコード内インラインTemplate
enable :inline_templates # ソースコード内HTMLテンプレートを有効化
こうしとくとそのソースコードの末尾で
get '/' do
erb :index
end
__DATA__
@@index
ほげふが
みたいなことが出来るようになる。