Одной из причин может быть то, что логика обработки ошибок передается обработчикам спасения в приложении.
ваш контроллер:
def some_action
@foo = Foo.find!(params[:id])
# Exception will raise here ...
# ...
end
, а затем укажите
rescue_from ActiveRecord::RecordNotFound, :some_method_that_will_render_a_404
(См. this для объяснения)
Строительные леса - это просто ярлыки для быстрого запуска и запуска чего-либо, но, как правило, строительные леса не предназначены длядожить до производства .
Лично я не видел слишком много кода, который не выполняет хотя бы базовую проверку.Я бы сказал, что это нечто культурное: если вы не создадите маршрут, который приведет к ошибке, вы не обязаны ее обрабатывать.Очевидно, что это далеко от идеала, но я думаю, что это не является приоритетом для многих разработчиков.Это в основном зависит от бизнес-логики: она обычно положительно ориентирована, то есть предполагает только реагирование на действия пользователя действительные .