防止模型的新实例

时间:2016-04-07 05:27:39

标签: ruby-on-rails ruby

在我正在创建的应用程序中,我有一个模型:

class Stat < ActiveRecord::Base
end

我在文件Stat中创建了db/seed.rb的6个唯一实例,我不希望有任何方法可以创建更多实例或销毁我创建的实例。我不希望存在的实例是read_only,修改一些属性很好,我知道如何防止其他人改变。但我找不到任何方法来锁定模型本身。

我是Ruby on Rails开发的新手。这可能吗?

1 个答案:

答案 0 :(得分:2)

使用before_create/destroy过滤器。

class Stat < ActiveRecord::Base
    before_create -> (model) { raise SomeError }
    before_destroy -> (model) { raise SomeError }
end