如何使用Proc.new
How to use Proc.new
我对这行很好奇:
set :views, Proc.new
它有什么作用,为什么要使用 Proc.new
?
class ApplicationController < Sinatra::Base
configure do
set :views, Proc.new { File.join(root, "../views/") }
enable :sessions unless test?
set :session_secret, "secret"
end
end
此过程不是静态的,它采用设置值 root
并评估视图路径。
这是 Sinatra 的一段文档:
When the setting value is a Proc
, evaluation is performed every time the setting is read so that other settings may be used to calculate the value
设置 root
值后,您无需设置视图的完整路径。
我对这行很好奇:
set :views, Proc.new
它有什么作用,为什么要使用 Proc.new
?
class ApplicationController < Sinatra::Base
configure do
set :views, Proc.new { File.join(root, "../views/") }
enable :sessions unless test?
set :session_secret, "secret"
end
end
此过程不是静态的,它采用设置值 root
并评估视图路径。
这是 Sinatra 的一段文档:
When the setting value is a
Proc
, evaluation is performed every time the setting is read so that other settings may be used to calculate the value
设置 root
值后,您无需设置视图的完整路径。