По началу всё было нормально, но сегодня клиент задаёт вопрос
Тут улыбнулся. Изменение ПО и есть "нормально".
Есть ли возможность всё залить через автомат?
Формулировка задачи тоже веселая.
И вот вопрос, как лучше всего сделать так, чтобы менеджер могла нажать на кнопку выбрать файл и оно без всяких там "зависонов" заполнило модель нужными значениями.
Да и сам вопрос веселый.
Абстрагируюсь и отвечу безотносительно ЯП и веб-фреймворка (т.е не буду писать код за вас - в режиме эремотерия).
Думаю с парсингом файла вы и так разберетесь, напишите воркер (выполняемый в отдельном процессе, "против зависонов") запускаемый по сабмиту формы загрузки файла. В воркере обойдете файл построчно, сохраните извлеченные данные через пакетную (batch) вставку в используемую базу данных (сегодня 2500, завтра вдруг мильоны.). И не суть txt, csv, xlsx, заказчику кстати можно предложить и то и это вместе. Ну и как-то уведомите менеджера, она ведь будет ждать окончания загрузки, переживать будет. А вдруг загружаемый файл содержит форматирование которое ломает процесс парсинга файла? Нужно отловить ошибку, сохранить внятный текст ошибки и показать ее менеджеру, ведь она должна знать что нужно исправить файл и попробовать снова его загрузить? Ведь мы люди, не звери.
Ну и тесты написать надо бы, вы же хотите спать более глубоким сном сознавая, что при изменении кода эта добавленная фича продолжает работать?
Вам нужно сделать механизм обновления записей? Тогда в загружаемом файле должны быть уникальные идентификаторы. Вы же будете как-то определять какой "color" из файла соответствует "color"у в БД.
Или нужно записи пересоздавать? В зависимости от этого и пишите логику.
Ну а UI сами продумайте, где ссылку добавить, где форму вывести.