1
不工作我有一個HAML模板,看起來像以下(也使用辛納屈,不知道這是很重要的):條件邏輯在HAML
- @email = params[:email]
EMAIL: x#{@email}#{params[:email]}#{@email.to_s.empty?}x
-if #{@email.to_s.empty?}
%form{ :action => "/", :method => "post"}
%fieldset
%input{:type => "text", :name => "email", :class => "text"}
%input{:type => "submit", :value => "Notify me!", :class => "button"}
-else
Thank you for your interest!
我有頂出那裏進行調試。當我最初加載頁面時,我看到「EMAIL:xtruex」和表單,表明參數是空的......都按計劃工作。
現在,當我填寫表單中的「[email protected]」並點擊按鈕,它會重定向回「/」,我會看到「EMAIL:xtesting @ gmail.comtesting @ gmail.comfalsex」,它告訴我我的條件邏輯應該起作用。
但我仍然看到表單,我的else語句沒有被執行...... if語句仍然被觸發。
我猜這是一個簡單的格式問題。有人可以協助嗎?
萬一它的需要,我的末日應用程序文件很簡單:
get '/' do
haml :index
end
post '/' do
User.create(:email => params["email"])
haml :index
end
感謝
這就是我最初但是當我做我得到:undefined method'blank?'對於零:NilClass – 2012-08-01 20:27:57
好吧,所以我明白了,但我仍然有點困惑。我沒有意識到你用'#{}'創建了一個字符串,這是問題的一部分。我把我的if改成了'-if params [:email] .to_s.empty?'但我爲什麼需要對它做些什麼? – 2012-08-01 20:35:41
可能是sinatra不提供空白的情況?方法。使用零?而不是 – phoet 2012-08-01 20:35:44