現在Userモデルに以下のような処理を入れてuuidを実現しています。

def before_save_action_name
    uuid = SecureRandom.uuid
    uuid = SecureRandom.uuid while User.exists?(:uuid => uuid)
    self.uuid = uuid
end

Rubyの表現力があれば1行で作れそうな気がするのですが(特にuuidに代入している行が2つある部分)、
どのように実装するのが理想でしょうか。