Я хотел получить объект на производстве и сделать точную копию (скопировать ее содержимое) на другой объект того же типа. Я попытался сделать это тремя способами с консоли ruby, из которой никто из них не работал:
-  
Скажем, у вас есть
ttкак первый объект, который вы хотите скопировать, иtt2в качестве объекта реплики. Первый подход, который я пробовал, - клонирование массиваtt2.patients = tt.urls.patients tt2.doctors = tt.segments.doctors tt2.hospitals = tt.pixels.hospitals -  
Второй подход, который я пробовал, - это дублирование массива, который фактически совпадает с клонированием массива:
tt2.patients = tt.patients.dup tt2.doctors = tt.doctors.dup tt2.hospitals = tt.hospitals.dup -  
Третий подход, который я пробовал, - marhsalling.
tt2.patients = Marshal.load(Marshal.dump(tt.patients)) tt2.doctors = Marshal.load(Marshal.dump(tt.doctors)) tt2.hospitals = Marshal.load(Marshal.dump(tt.hospitals)) 
Ни одно из вышеперечисленных работ не предназначено для глубокого копирования из одного массива в другой. После каждого индивидуального подхода каждый элемент первого содержания (tt) аннулируется (пациенты, врачи и больницы исчезли). Есть ли у вас какие-либо другие идеи по копированию содержимого одного объекта в другой? Спасибо.