On Mar 21, 2011, at 8:41 PM, yutaka kawate wrote:
> There is no problem if run from dev_appserver.py.
> Some wrong in session file system.
> so the safe way is passing session,request as prameters.
> thank you

Yes. A module has its own namespace, so it doesn't have access to the caller's 
globals. 

> 
> woo, big earth quake again.

どこに住んでいますか?

> 
> the code is 
> 
> in db.py
> mymodules = local_import('mymodules.who')
> who = mymodules.Who(globals())
> 
> in modules.Who
> class Who(object):
> #    def __init__(self,session,request): #,session,request):
>     def __init__(self,environment): #,session,request):
>         self.environment = environment
>         request = environment['request']
>         session = environment['session']
> 
>         who = session.who
>         if who and who.last_visit and who.last_visit\
>              + datetime.timedelta(days=0, seconds=3600)\
>              > request.now:
>             self.class_mate = who.class_mate
>             self.id = who.id
>             self.leader = who.leader
>             self.name = who.name
>             self.displayname = who.displayname
>             self.class_code = who.class_code
>             self.last_visit = request.now
>             session.who = self
>         else:
>             self.class_mate = None
>             self.id = None
>             self.leader = None
>             self.name = None
>             self.displayname = None
>             self.class_code = None
>             session.who = None
> 
> #    def 
> login(self,session,request,class_mate,id,leader,name,displayname,class_code):
>     def login(self,class_mate,id,leader,name,displayname,class_code):
>         #self.db = db
>         request = self.environment['request']
>         session = self.environment['session']
>         self.class_mate = class_mate
>         self.id = id
>         self.leader = leader
>         self.name = name
>         self.displayname = displayname
>         self.class_code = class_code
>         self.last_visit = request.now
>         
>         session.who = self
> 
>     def logoff(self,session):
>         self.class_mate = None
>         self.id = None
>         self.leader = None
>         self.name = None
>         self.displayname = None
>         self.class_code = None
>         session.who = None
> 
> 2011/3/22 yutaka kawate <[email protected]>
> thank you 
> but
> i am very sorry, i did typing miss.
> actually, i did so.
> 
> it looks that system try to pickle response variable.
> i am trying environment['response'] = None
> 
> 2011/3/22 Floyd <[email protected]>
> try use self in login(...) method: 
>  def login(self,....) 
>         request = self.environment['request'] 
>         session = self.environment['session'] 
> 
> Bye,
> Floyd
> 
> 


Reply via email to