diff options
Diffstat (limited to 'acf2/model/model.lua')
-rw-r--r-- | acf2/model/model.lua | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/acf2/model/model.lua b/acf2/model/model.lua index 4140087..fdb7c96 100644 --- a/acf2/model/model.lua +++ b/acf2/model/model.lua @@ -168,12 +168,19 @@ function M.Model:init(context) return v end + if self.is_removable then + function mt.removable() return self:is_removable() end + end + if not mt.txn then return end function mt.mmeta(name) return mt.member(name):meta() end - function mt.save(k, v) return mt.member(k, false, Field):save(v) end + function mt.save(k, v) + mt.check_removable(k, v) + return mt.member(k, false, Field):save(v) + end local function tmeta(tpe) return map(function(m) return m:meta() end, _members(tpe)) |