Если я правильно понимаю ваш вопрос, то генератор не нужно выключать. При создании записи (экземпляра модели) ей присваивается внутренний id и статус фантомной, т.е. не существующей на сервере.
Когда Store отправляет записи на сервер, они передаются с фантомным id. Нормальный протокол со стороны сервера, в цикле по каждой записи:
-  Сохраняем переданный фантомный id в переменную
 
-  Пишем запись в базу
 
-  Создаём объект для возврата
 
-  Реальный сгенерированный базой id возвращаем в поле idProperty
 
-  Старый фантомный id возвращаем в поле clientIdProperty
 
-  Сохраняем возвратный объект в массив для возврата и идём к следующей записи
 
Такой же механизм будет использоваться и для отдельных экземпляров моделей, без Store. Смотрите документацию: 
http://docs.sencha.com/extjs/5.1/5.1...ientIdProperty
Ещё могу предложить посмотреть пример (более/менее) правильной реализации CRUD: 
https://github.com/nohuhu/HTML5-Star...Direct/Base.pm. Я над этим проектом потихоньку работаю в свободное время. Это не PHP, но при желании разберётесь. ;)