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

Например, предположим, что у меня есть учетная запись и модель кредитной карты, кредитная карта создается для учетной записи и проверяется, когда учетная запись есть, но также сохраняется, когда Account.save! называется.

Как я могу предотвратить сохранение этой модели (потому что мне могут не нужны данные CC в моей базе данных)

1
Neil Middleton 25 Май 2010 в 15:02

3 ответа

Лучший ответ

Почему бы тебе не написать свое собственное сохранение! способ заменить его базовый класс?

2
baloo 25 Май 2010 в 15:04
Пробовал, но это возвращает: неправильное количество аргументов (1 для 0)
 – 
Neil Middleton
25 Май 2010 в 15:06
Вы пробовали добавить то же количество аргументов, что и исходный метод?
 – 
baloo
25 Май 2010 в 15:15

Используйте метод #readonly!:

1
François Beausoleil 25 Май 2010 в 19:33

Почему вы вообще сохранили номер кредитной карты в БД?

Просто добавь

attr_accessor :cc_number

Тогда вам даже не понадобится столбец в вашей БД для кредитной карты.

1
Josh 3 Май 2012 в 08:03
"Почему вы вообще сохранили номер кредитной карты в БД?" Думаю, он нашел ошибку и пытается ее решить: P
 – 
llazzaro
16 Сен 2012 в 12:01