Я новичок в рубине. Я кодировал на многих языках, и обычно все получается быстро, если есть хорошая справка и все объясняется логически. Я схожу с ума. Я рассмотрел все возможные вопросы, связанные с этим, в stackoverflow, а также на других сайтах. Все говорят, что используют .clone или .dub или freeze и даже что-то вроде Marshal.load (Marshal.dump (arr)), но ничего из этого не работает.
Мне просто нужна копия исходного объекта, которую я могу изменить во время выполнения, не внося никаких изменений в базу данных.
Проект rails загружает кучу продуктов в объект, который затем вводится в выпадающий список. Допустим, это называется @products. Клиент хочет, чтобы я удалил определенные записи из раскрывающегося списка, но они НЕ должны быть удалены из базы данных.
Например, в php вы просто загружаете объект db в переменную и удаляете то, что вам не нужно, например, по id, а затем перебираете получившийся объект / массив, и это создает раскрывающийся список. Это не вносит изменений в базу данных.
Я очень быстро понял, Ruby так не работает, и он удаляет вещи прямо из базы данных, даже если я использую .clone или .dup.
Допустим, я использую tempproducts = @products и делаю что-то вроде tempproducts.delete (11), я не хочу, чтобы система тоже удаляла @products (11).
Это элементарная функция программирования, почему я не могу придумать, что сделать так просто?
Спасибо всем, кто может мне помочь с этим, или даже опубликовать ссылку на правильный ответ!