私は、sinatra を使用してかなり単純なサイトを書き始めたところです。私の問題は、メインの app.rb ファイルをリファクタリングしたかったのですが、url パラメーターにアクセスしようとするとエラーが発生することです。
私の get '/' アクションでは、Sinatra はどのパラメーターが設定されているかを調べてから、URL の内容に応じていくつかの異なることを行う必要があります。このようなもの。
class App < Sinatra::Application
...
get '/' do
if params['code1']
@network = 'code1'
mode code here
elsif params['called'] && params['mac']
@network = 'code2'
mode code here
elsif params['code3']
@network = 'code3'
mode code here
end
end
問題は、params も使用するファイルを要求する必要があることです。
上記のコードに以下を入れました。
require File.dirname(__FILE__) + '/lib/networks/code1.rb'
code1.rb には以下が含まれます。
class App < Sinatra::Application
if params['login'] # == 'login'
pass = 'uampass'
elsif
...
しかし、それは私に次のエラーを与えます:
undefined local variable or method `params' for main:Object
エラーを発生させずにこれをリファクタリングするにはどうすればよいですか