summaryrefslogtreecommitdiffstats
path: root/acf2/model/model.lua
diff options
context:
space:
mode:
Diffstat (limited to 'acf2/model/model.lua')
-rw-r--r--acf2/model/model.lua9
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))