Ruby: Nils в операторе IF [дубликат]

У меня есть следующий очень уродливый рубиновый код в приложении rails, над которым я работаю:

if params.present?
  if params[:search].present?
    if params[:search][:tags_name_in].present?
      ...
    end
  end
end

Все, что я пытаюсь спросить, это определить, были ли определены параметры[:search][:tags_name_in], но потому что параметры, и params[:search], и params[:search][:tags_name_in] могут быть нулем, если я использую...

if params[:search][:tags_name_in].present?

... Я получаю ошибку, если нет параметров или нет параметров поиска.

Конечно, должен быть лучший способ сделать это... Предложения??

9
задан Brett Bender 22 March 2011 в 15:59
поделиться