Vérifier si la valeur n'est pas nulle et non vide avec l'accélérateur rails ?

Créé le 13 Dec 2022 - Mis à jour le 04 Jul 2023 - Créé par Fabien Berthoux - ruby-on-railsruby

Lorsque vous travaillez avec Rails, vous pouvez vérifier si une valeur n'est pas nulle ou vide avec le raccourci Rails. Vous pouvez le faire en utilisant la méthode Rails "blank?" qui retourne true si la valeur n'est pas nulle et non vide. Vous pouvez également utiliser la méthode Rails "present?" qui retourne true si la valeur n'est pas nulle et non vide. Ces méthodes sont utiles pour vérifier si un objet existe avant de l'utiliser et de le manipuler.

def some_method
  if params[:name].present?
    # Do something
  end
end

Comment fonctionne la méthode Rails "blank?"?

La méthode Rails "blank?" retourne true si la valeur n'est pas nulle et non vide. Elle prend en compte les objets nuls, les chaînes vides, les tableaux vides et les hashs vides. Elle retourne false si la valeur est nulle ou si elle est vide.

def some_method
  if params[:name].blank?
    # Do something
  end
end

Comment fonctionne la méthode Rails "present?"?

La méthode Rails "present?" retourne true si la valeur n'est pas nulle et non vide. Elle prend en compte les objets nuls, les chaînes vides, les tableaux vides et les hashs vides. Elle retourne false si la valeur est nulle ou si elle est vide.

def some_method
  if params[:name].present?
    # Do something
  end
end

Quelle est la différence entre la méthode Rails "blank?" et la méthode Rails "present?"?

La méthode Rails "blank?" et la méthode Rails "present?" font la même chose mais fonctionnent de façon inverse. La méthode Rails "blank?" retourne true si la valeur est nulle ou si elle est vide, alors que la méthode Rails "present?" retourne true si la valeur n'est pas nulle et non vide.

def some_method
  if params[:name].blank?
    # Do something
  elsif params[:name].present?
    # Do something else
  end
end

Comment vérifier si un objet est nul ou vide avec Rails?

Vous pouvez vérifier si un objet est nul ou vide avec les méthodes Rails "blank?" et "present?". La méthode Rails "blank?" retourne true si la valeur est nulle ou si elle est vide, alors que la méthode Rails "present?" retourne true si la valeur n'est pas nulle et non vide.

def some_method
  if params[:name].blank?
    # Do something
  elsif params[:name].present?
    # Do something else
  end
end

Comment vérifier si un objet est un tableau ou un hash avec Rails?

Vous pouvez vérifier si un objet est un tableau ou un hash avec la méthode Rails "is_a?" qui retourne true si l'objet est un tableau ou un hash. Vous pouvez également vérifier si un objet est une chaîne avec la méthode Rails "is_a? String".

def some_method
  if params[:name].is_a? Array
    # Do something
  elsif params[:name].is_a? Hash
    # Do something else
  end
end