summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--acf2/model/field.lua5
1 files changed, 3 insertions, 2 deletions
diff --git a/acf2/model/field.lua b/acf2/model/field.lua
index 309249e..fd3c61f 100644
--- a/acf2/model/field.lua
+++ b/acf2/model/field.lua
@@ -60,7 +60,7 @@ function M.Field:init(params)
params,
{
addr=params.compute and node.null_addr or nil,
- editable=not params.compute
+ editable=(params.store or not params.compute) and true or false
}
)
@@ -174,7 +174,8 @@ function M.Field:validate(context, value) end
function M.Field:save(context, value)
self:check_editable(context)
- self:_save(context, self:_validate(context, value))
+ if self.store then self:store(context, value)
+ else self:_save(context, self:_validate(context, value)) end
end
function M.Field:_save(context, value) context.txn:set(context.addr, value) end