我为用户提供了一个显示页面,并且每个属性仅在该页面上可见,如果它不是nil且不是空字符串。在下面,我有我的控制器,@user.city != nil && @user.city != ""
为每个变量编写同一行代码非常烦人。我对创建自己的方法不太熟悉,但是我可以以某种方式创建快捷方式来执行以下操作:@city = check_attr(@user.city)
吗?还是有缩短此过程的更好方法?
users_controller.rb
def show
@city = @user.city != nil && @user.city != ""
@state = @user.state != nil && @user.state != ""
@bio = @user.bio != nil && @user.bio != ""
@contact = @user.contact != nil && @user.contact != ""
@twitter = @user.twitter != nil && @user.twitter != ""
@mail = @user.mail != nil && @user.mail != ""
end
if @user && @user.authenticated
可以简单地变成if @user&.authenticated