2010-03-09 1 views
3

Пользователь может импортировать данные на наш веб-сайт из файла. Данные обычно содержат несколько сотен элементов (элемент < ActiveRecord :: Base).Сохранить Rails Объекты ActiveRecord во временную таблицу (MySQL)

Несмотря на то, что валидации помогают, они не могут решить проблему проверки правильности содержания. Для этого мы хотели бы иметь тестовый режим.

Можем ли мы использовать временную таблицу Items для этого с Rails/MySQL и, если да, как это сделать?

ответ

4

Для этого вы можете использовать драгоценный камень AR Extensions. Прочтите это article для более подробной информации.

User.create_temporary_table do | temp_model| 
    # now perform the inserts on temp table. 
    temp_model.create(...) 
    ... 
end # table dropped automatically 

ИЛИ

temp_model = User.create_temporary_table 
temp_model.create(...) 
#do something 
... 
... 
#drop the temp table 
temp_model.drop