Думайте об этом так:
В первом примере вы говорите Active Record найти запись в таблице пользователей с идентификатором 4, и она должна существовать.
Во втором примере вы пройдете долгий путь и скажете: «Пожалуйста, найдите записи с атрибутом id, равным 4, и, если есть, верните первый».Вот почему он ничего не возвращает.
Более короткий способ сделать это - использовать find_by_id
.