If 语句比较 haml 中的变量产生 true
If statements comparing variables in haml producing true
我的 haml 文件中有两个 if 语句
- if #{id} == 1
%h1 #{id}
- if #{id} == 2
%h1 #{id}
如果我有 id 1 或 2,两者都为真,所以我会打印在页面“1 1”或“2 2”上。我怎样才能对变量值进行比较。谢谢
编辑:
这就是我传递给我的观点:
render "show" , :locals => {:id => params[:id]}
编辑 2:
这应该会产生两个 1,但当 id=1 时,只会从最后一个标签产生 1。所以我不知道可能是什么问题。还有其他想法吗?
- if id == 1
%h1= id
- if id == 2
%h1= id
%h1= id
答案:这有效。 (需要字符串的引号)
- if id == "1"
%h1= id
- if id == "2"
%h1= id
%h1= id
尝试:
- if id == "1"
%h1= id
- if id == "2"
%h1= id
假设你想要:
<% if id == "1" %>
<h1><%= id %></h1>
<% end %>
<% if id == "2" %>
<h1><%= id %></h1>
<% end %>
如果这对您不起作用,则问题出在其他地方。
我的 haml 文件中有两个 if 语句
- if #{id} == 1
%h1 #{id}
- if #{id} == 2
%h1 #{id}
如果我有 id 1 或 2,两者都为真,所以我会打印在页面“1 1”或“2 2”上。我怎样才能对变量值进行比较。谢谢
编辑: 这就是我传递给我的观点:
render "show" , :locals => {:id => params[:id]}
编辑 2:
这应该会产生两个 1,但当 id=1 时,只会从最后一个标签产生 1。所以我不知道可能是什么问题。还有其他想法吗?
- if id == 1
%h1= id
- if id == 2
%h1= id
%h1= id
答案:这有效。 (需要字符串的引号)
- if id == "1"
%h1= id
- if id == "2"
%h1= id
%h1= id
尝试:
- if id == "1"
%h1= id
- if id == "2"
%h1= id
假设你想要:
<% if id == "1" %>
<h1><%= id %></h1>
<% end %>
<% if id == "2" %>
<h1><%= id %></h1>
<% end %>
如果这对您不起作用,则问题出在其他地方。