optimize current_user and preload resource