我有一个用户表,我希望所有类型都有一个默认值,除了我希望每种类型的默认值都不同。我在基类上有一个before_create回调方法,其值设置为某些东西,我在为其他值继承它的类中重写该方法,但每次我播种时都会得到RecordNotSaved错误。我该怎么做呢?
谢谢!
答案 0 :(得分:0)
检查你的回调是否为before_create;如果他们返回假,你会得到这个错误。 RecordNotSaved通常表示验证错误,如果您的回调返回false,即使是无意中,您也会收到该错误。
答案 1 :(得分:0)
您可以编写数据库触发器来设置默认值,我建议before_save
而不是before_create
。假设你正在建造汽车课程。
```
class Car
before_save :default_type
def default_type
self.car_type ||= self.class.name
end
end
class Honda < Car
end
class Tesla < Car
end
```