我有一个Middleman项目,我需要模拟一个登录用户.
足够简单 - 可以在config.rb中设置一些全局变量,如@ user = 1,为登录用户编码所有内容,然后将变量设置为0,并为已注销的用户编写所有内容,如果无处不在
我不是Ruby编码器所以我不明白在哪里挂钩.所以:我如何在中间人的config.rb中设置一个全局app变量?
小智 12
您可以使用page帮助程序在特定路径上设置变量:
page "/my-page.html", :locals => { :is_logged_in => true }
Run Code Online (Sandbox Code Playgroud)
如果您想使用单个模板(包括if用于处理基于内容更改的语句)is_logged_in,您将使用页面代理:
page "/my-page-logged-in.html", :proxy => "/my-page.html", :locals => { :is_logged_in => true }
page "/my-page-logged-out.html", :proxy => "/my-page.html", :locals => { :is_logged_in => false }
Run Code Online (Sandbox Code Playgroud)
对于直接变量,请使用set:
set :is_logged_in, true
Run Code Online (Sandbox Code Playgroud)
在模板中:
<%= is_logged_in %>
Run Code Online (Sandbox Code Playgroud)