You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
そろそろwebアプリケーションを作ってみたいのでやってみる。 rubyでやるとなるとrailsがいちばん有名みたいなんだけど、数年前rubyに最初にトライしたとき参考書にrailsを使うとdbを使ったサイトが簡単に出来ますって良く書いてあって、db使わないサイト作るのは出来るけどめんどいですって書いてあったのであきらめた経緯がある。 いまはどうか知らないけどそのトラウマからrailsは敷居高い感じがするので、その次に有名っぽいsinatraでやってみる。 一応ここらへんを参考にひととおりざっくりとだけ読んでやってみる。 ちなみにだれも教えてくれるひとがいない環境でやってるので、どれが最新でどういう組み方がトレンドでスタンダードかは己のググり力に頼るしかないので、あわよくばすべてが間違っている可能性もあるけどとりあえずいまは気にしない。 Sinatra: README (Japanese)
Sinatraはとてもシンプルなフレームワークです. 例えばHello Worldならば次のコードだけでできあがりです. 魔法のようにかんたんですね! しかし「どうしてこれで動くのか」を知っている人は比較的少ないのではないでしょうか. 気になるSinatraのソースコードを読んでみましょう. Classic Style と Modular Application ところでSinatraにはクラスを使ったModular Applicationという書き方があるのを知っていますか? Hello WorldはModular Applicationではこのようになります
Sinatra はじめて触ったんだけど、ログをファイルに書く方法がなかなかわからなかった。 ログを、ただファイルに書きたいのです。 結論 独自のミドルウェアで env['app.logger'] を設定し、アプリケーションのloggerメソッドをオーバーライドする。 参考 ruby - Use Rack::CommonLogger in Sinatra - Stack Overflow これに書いてある通りだった。面倒くさいー。 サンプル 以下でログがファイルに出力される。アクセスログとアプリケーションログを別のファイルに出力することもできる。 config.ru Loggerを作ってミドルウェアに渡す。 require 'logger' require 'sampleapp' require 'applog' logdir = File.dirname(__FILE__) + "/log
目的 このページの目的は、Sinatra が提供する機能のコンパクトリファレンスを提供することです。 必要時に調べたことをまとめていくので、使っていない機能に関しての記載がない点はご了承ください。 本リファレンスを理解するために重要となるスコープという概念を理解していない人は、以下のページを事前に参照すると良いでしょう。 Sinatra のスコープについて また、詳細は以下のサイトを参照すると良いでしょう。 参考 メインサイト - Sinatra Sinatra: README(Japanese) Sinatra Book(英語) ハンドラ群 全てのハンドラはアプリケーション/クラススコープで定義します。 下の表の並びは、実行されるハンドラの種類の順番を表しています。例えば before より先に get を定義したとしても、before は get よりも必ず先に実行されます。 各スコー
require 'sinatra' ['/one', '/two', '/three'].each do |route| get rounte do "Triggered #{route} via GET" end post route do "Triggered #{route} via POST" end end RESTリクエストのパラメータを受け取りたい 例えばこんなリクエスト http://my.server.address/function?key1=value1&key2=value2&key3=value3 こんなふうに受けることができる
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く