summaryrefslogtreecommitdiffstats
path: root/acf2
diff options
context:
space:
mode:
authorKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2013-12-20 01:59:31 +0200
committerKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2013-12-20 02:04:16 +0200
commit44d1d958c500ebd878e29cfc2969e12d54a0773c (patch)
tree6029f8e90c56a6048b4d041b02f71693d0cf89af /acf2
parentbad3738b7937c7d3cdb1878be664341aebe36652 (diff)
downloadacf2-44d1d958c500ebd878e29cfc2969e12d54a0773c.tar.bz2
acf2-44d1d958c500ebd878e29cfc2969e12d54a0773c.tar.xz
model: field save method override parameter
Diffstat (limited to 'acf2')
-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