Sinatra 在模板中访问变量

2023-12-19 16:15 更新

模板和路由执行器在同样的上下文求值,在路由执行器中赋值的实例变量可以直接被模板访问。路由就是控制器 + 动作,这里免去了 Rails 中控制器和视图的分层 (避免的控制器到视图中对象的复制):

get '/:id' do
  @foo = Foo.find(params[:id])
  haml '%h1= @foo.name'
end

或者,显式地指定一个局部变量的哈希:

get '/:id' do
  foo = Foo.find(params[:id])
  haml '%h1= foo.name', :locals => { :foo => foo }
end

显示传递局部变量的典型的使用情况是在模板中渲染局部模板的方式来渲染。


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号