Sorry, i wanted to say 'model' not 'module'.
I've tried to pass data from a callback in a model to "its" function in a
controller with 'current', but was not able:
def my_before_callback():
from gluon import current
current._mydata = 'hello'
In a controller:
def my_function():
db.....update(....)
from gluon import current
response.flash = current._mydata
but got error:
<type 'exceptions.AttributeError'> 'thread._local' object has no attribute
'_mydata'
I'm doing something wrong or it's just that it applies only for modules and
not for models and/or controllers?.
I'm sure the callback is called because all works if i replace 'current'
with 'request.vars'.
Thanks for your time.
El jueves, 3 de abril de 2014 17:10:57 UTC+2, Anthony escribió:
>
> On Thursday, April 3, 2014 10:58:32 AM UTC-4, mcamel wrote:
>>
>>
>> Be careful about storing something in request.vars, as some other code
>>>>> may depend on request.vars and end up failing due to it being changed.
>>>>>
>>>>
>>>> Any alternative you can suggest?. Session object seems error prone for
>>>> this because of concurrency...
>>>>
>>>
>>> You could just declare a global variable:
>>>
>>
>> That works fine to pass values from 'before' callback to 'after'
>> callback, but fails if you want to pass values from 'after' callback (in a
>> module) to the function that triggered it (in a controller).
>>
>
> That's a different story. In that case, you could add something to
> "current".
>
> Anthony
>
--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
---
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.