From: Wayne Larsen <wvlarsen@ya...> - 2002-11-26 00:11:24
In building a login system, I authorize the user, and
then put the user object into the session data. That
works great, and I can always query the user's
permission easily, because the user object is easily
accessible. The user object is a middlekit object,
and therein lies the problem.
When the AppServer attempts to move the session to
file, that user object can not be pickled, because
apparently there is no support for pickling a
middlekit model. I'm left with invalid session data,
and i need to delete the session data and restart the
AppServer to continue.
I see several ways around this, but I'm not sure what
is the best design. What do others do?
1. Store only a handle to the user in the session, and
retrieve the user object from the database when
2. Store the relevant information from the user in the
session, instead of just stuffing the whole object
into the session
3. Enhance MiddleKit to allow this to work
4. Build a user cache into the user manager (which
appears to be what the design for UserKit is allowing
for, but is not implemented).
To me, option 3 seems like the best design, but I
don't have a clue as to what that would require. The
design of UserKit seems to suggest that option 4 is
the desired design. Option 1 would require a lot of
database queries, and option 2 seems like a hack, but
both would be easy to do.
Do you Yahoo!?
Yahoo! Mail Plus Powerful. Affordable. Sign up now.