I am pretty sure this works:
Field('html', compute = lambda row: MARKMIN(row.markmin).xml()).
I cannot reproduce the problem you refer mention.
On Monday, 27 February 2012 04:10:23 UTC-6, Mirek Zvolský wrote:
>
> I think the behaviour of "compute=" is not good. Most people need
>> calculated field which ALWAYS follow the source values and not just ONCE.
>> So I have found in google group, lot of people fall through the time in
>> same problem and there is still no clear solution.
>>
>> I now need this for Markmin source and calculated Html output (both
>> fields in same table)
>> I have solved this so:
>> ...Field('html', compute = lambda row: MARKMIN(row.markmin).xml())...
>> and in addition I use "onaccept" method in form:
>> def post_forcecompute(form):
>> row = db.post(form.vars.id)
>> row.update_record(html=db.post.html.compute(row))
>> crud_post.settings.update_onaccept = post_forcecompute
>>
>> This works, however it is not very good workaround, because it is
>> neccessary to solve it in form, instead of in the model :(
>>
>> Mirek
>>
>