2010-12-15 50 views
0

我正在尝试一些做法,但只是想我会问画廊。如果没有登录,提供一个静态主页的最大的方式

根据用户是否登录,我希望我的应用(/)的根页面成为两件事之一。

如果他们没有登录我想用一些静态信息和登录表单发一个静态页面。

如果他们已登录,我希望他们被提供到我的应用程序的主索引页面(/ invoices /)。

我使用authlogic来管理用户登录。我认为这样做的一些想法看起来不必要的复杂(这是Rails--它应该是简单的不应该它?),我认为某人已经知道更好的方法。

回答

1

homepage_controller

def index 
respond_to do |format| 
    if current_user 
    format.html { render :partial => 'view', :layout => 'nonuser' } 
    elsif !current_user 
    format.html { render :partial => 'view', :layout => 'user' } 
    end 
end 

类似的东西?

1

我会将下面的方法定义添加到控制器来定义那里的布局。如果行为是全局的,那么application_controller就是这个方法定义的地方。

layout :choose_layout 

def choose_layout 
    if current_user 
     return 'user_view' 
    end 
    return 'non_user_view' 
end 
相关问题