2013-02-21 39 views
3

如果用戶沒有關注我的應用中的任何人,我目前正在向用戶顯示一個對話框,但我只想在用戶首次登錄時顯示此對話框?每當新用戶第一次登錄時,他們不會關注任何人,因此他們的Feed沒有任何帖子,因此會顯示對話框。我實現,使用下面的代碼:用戶首次登錄時顯示一個對話框

<% if @posts.any? %> 

我想展示在用戶首次登錄對話框,然後就再也沒有出現。我知道Deivse有sign_in_count選項,但直到用戶註銷並重新登錄對話框會呆在那裏。

+0

你沒有真正告訴我們足夠的工作。 – 2013-02-21 00:35:28

+0

對不起,我將編輯該問題。 – 2013-02-21 00:39:08

回答

2

如果您的:trackable模塊添加到您的設計安裝,你會得到一個last_sign_in_atsign_in_count。這兩種方法都應該爲您提供足夠多的信息,以瞭解用戶以前是否登錄過。何時可能應該消失。

例如:

display_dialog unless current_user.last_sign_in_at.present? 

display_dialog unless current_user.sign_in_count > 0 
0

在控制器

if @posts.blank? && user.sign_in_count == 1 # no posts and 1st time login 
    session[:display_dialog] = true 
ens 

鑑於

<%= display_dialog if session[:display_dialog] %>