Я бы хотел иметь возможность возвращать объекты в порядке их создания.Очевидно, что я мог бы использовать поле create_at для этого, но это не сработает в моих тестовых сценариях, где я отключил Time.zone.now, чтобы всегда возвращать одно и то же время.
Гарантирует ли AR, что следующий идентификатор будетвсегда будет больше, чем последний объект, или есть вероятность, что он будет использовать удаленные идентификаторы.Я почти уверен, что базы данных предлагают оба типа функциональности, но что Rails выбирает по умолчанию?
EDIT:
Тестирование с драйвером SQLite показывает, что оно монотонно.Даже если я удаляю все записи в таблице, закрываю сеанс, открываю сеанс и создаю больше записей, идентификаторы новых записей получают идентификаторы, превышающие идентификаторы предыдущих удаленных объектов.Однако я не хочу полагаться на эмпирические доказательства здесь.Если у кого-то есть четкий ответ о намерении разработки ActiveRecord, это будет оценено.