2
我有一個很小的Sinatra項目,我需要覆蓋Rack::Auth::Basic#valid?
。目前,我已經把這個覆蓋在我的應用程序的主文件,但似乎雜亂的來源,事情變得越來越大......Sinatra - 最重要的機架類別
require "sinatra/base"
module Rack::Auth
class Basic
def valid?(auth)
# My overrides go here...
end
end
end
class App < Sinatra::Base
use Rack::Auth::Basic, "CustomRealm" do |username, password|
# Authentication
end
get "/" do
erb :index
end
end
我想將覆蓋移動到外部文件。我的項目結構是沿
* views
|------ index.erb
* config.ru
* app.rb
* README.md
* LICENSE.md
* Gemfile
* Gemfile.lock
線的東西我在哪裏可以移動Rack::Auth
覆蓋,這樣我可以從裏面app.rb
使用它們?我試圖把它們放在lib/rack/auth/basic.rb
上,但那根本不起作用......什麼是Sinatra標準?
+1。作爲替代方案,我會將代碼放在'lib/rack/auth.rb'中,因爲如果Rack不是外部庫,那麼這樣做會如此。 – iain 2013-03-14 21:45:59