Как насчет этого?
if params[:limit]
@limit = [params[:limit].to_i, 50].min
end
Кроме того, ваш текущий код может содержать ошибку в том, что он не устанавливает @limit, если params [: limit] = 50 (вы проверяете на> 50 и <50, но не = 50). </p>
Редактировать: реализация fl00r в комментарии философии почти такая же, но более краткая. Используйте его вместо этого.