On Friday, April 23, 2021 at 9:43:19 AM UTC-7 lucas wrote:
> hello one and all, > > i'd like to save and recover Storage instances to a text blob field in a > database. converting to the string is not hard to store it in the field. > recovering it back to a Storage instance is other issue, especially when > they're embedded Storage objects in the main Storage object. i've tried > from a script file not under a web2py application as: > > #!/usr/bin/env python3 > # -*- coding: utf-8 -*- > from sys import path, argv > path.append('/opt/web2py_apps/web2py/') > from gluon import * > from gluon.storage import Storage > if 1: > ss = Storage(s='main') > ss.happy = 'yes happy' > #ss.status = Storage(s1="1status1", s2="2status2") > print("1:::", ss, type(ss)) > ss = repr(ss) > print("2:::", ss, type(ss)) > #xglobal, xlocal = globals(), { } > #eval(ss, xglobal, xlocal) > ss = eval(ss) > print("3:::", ss, type(ss)) > exit() > > with output: > 1::: <Storage {'s': 'main', 'happy': 'yes happy'}> <class > 'gluon.storage.Storage'> > 2::: <Storage {'s': 'main', 'happy': 'yes happy'}> <class 'str'> > Traceback (most recent call last): > File "./web2py_Storage.py", line 17, in <module> > ss = eval(ss) > File "<string>", line 1 > <Storage {'s': 'main', 'happy': 'yes happy'}> > ^ > SyntaxError: invalid syntax > > any ideas how to make this work smoothly? thank you in advance, lucas > When you convert the storage to string (via the repr() call), don't use the same name. /dps -- 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 web2py+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/web2py/49cd4138-1ea4-4d9c-9fa7-f591e112c559n%40googlegroups.com.