Techioz Blog

より多くのオプションパラメータを受け入れるようにSinatraを設定するにはどうすればよいですか?

概要

ローカルホストで実行されるデスクトップアプリにSinatraを使用しています。起動時に、このようなオプションを渡したいのですが、ruby mysinatra.rb -first_name=“My Name” しかし、無効なオプションエラーが発生し続けます。 Sinatra 自体がポートなどのオプションを受け入れているため、理解していると思います。たとえば、ruby mysinatra.rb -h を実行すると、得られる出力 (以下を参照) は、Sinatra が受け入れるすべてのオプションです。

注: 渡されるオプションは、アプリケーションが実行されるたびに変更されるため、便利である必要があります。ファイルにハードコーディングすることはできません。

これは、ruby mysinatra.rb を実行したときの出力です。

Usage: main [options]
    -p port                          set the port (default is 4567)
    -s server                        specify rack server/handler
    -q                               turn on quiet mode (default is off)
    -x                               turn on the mutex lock (default is off)
    -e env                           set the environment (default is development)
    -o addr                          set the host (default is (env == 'development' ? 'localhost' : '0.0.0.0'))

解決策

これを行うには 2 つの方法があります。