This User object works well
Can I now somehow do this

if i saw
j.number_comments=j.number_comments+1

will go to user table and increment the row automatically that ll be awesome

:)
thanks

<api.User instance at 0x94fbc8c>
>>> j.
j.__class__                 j.hotmail                   j.number_userpics
j.__doc__                   j.htmlcodes                 j.number_uservideos
j.__init__                  j.id                        j.number_votes
j.__module__                j.interests                 j.pageviews
j.aim                       j.ip                        j.password
j.books                     j.kissallfriends            j.pokeallfriends
j.city                      j.last_login                j.profilepic
j.created                   j.last_name                 j.publishfeed
j.dob                       j.liketomeet                j.rating
j.email                     j.movies                    j.rawpassword
j.email_subscribe           j.music                     j.setlastlogin
j.favoritestuff             j.myrand                    j.setlastlogin300
j.first_name                j.number_activities         j.site
j.gender                    j.number_comments           j.skype
j.getfeeds                  j.number_communities        j.television
j.getfriends                j.number_friends            j.userid
j.getlastloginstr           j.number_pages              j.username
>>> j.number_friends

On Wed, May 14, 2008 at 1:21 AM, Paul Jobs <[EMAIL PROTECTED]> wrote:

>   class User:
>  >      """user object
>  >      """
>  >
>  >      def __init__(self, id):
>  >          self._id = id
>  >          self._user=db.query('select * from users where
>  > id=$id',vars=locals())
>  >          if not self._user:
>
>
> *        for k in self.user.keys():
>             setattr(self,k,self.user[k])*
>
> is there a better way to do this?
>
>
> Yoan Blanc wrote:
>
> What you wanna do isn't a dict but 
> that:http://docs.python.org/ref/attribute-access.html
>
> -- Yoan
>
> On Wed, May 14, 2008 at 9:47 AM, Yoan Blanc <[EMAIL PROTECTED]> <[EMAIL 
> PROTECTED]> wrote:
>
>
>  
> http://www.diveintopython.org/object_oriented_framework/special_class_methods.html
>
>  or be naughty:
>
>  class User(dict):
>    ...
>
>
>
>  On Wed, May 14, 2008 at 9:42 AM, Paul Jobs <[EMAIL PROTECTED]> <[EMAIL 
> PROTECTED]> wrote:
>  >
>  >  im trying to create a class user
>  >  so that
>  >
>  >  i can do
>  >
>  >  r=User(1)
>  >
>  >
>  >  r._user.keys()
>  >  ['rating', 'last_name', 'pageviews', 'ip', 'number_polls', 'site',
>  > 'myrand', 'hotmail', 'number_activities', 'skype', 'id', 'city',
>  > 'rawpassword', 'number_useraudios', 'zip', 'number_votes', 'last_login',
>  > 'number_userpics', 'music', 'email', 'number_pages', 'username',
>  > 'number_posts', 'hash', 'number_comments', 'number_pictures', 'first_name',
>  > 'yahoo', 'groups', 'heroes', 'favoritestuff', 'number_usermessages_sent',
>  > 'vanity', 'interests', 'television', 'number_uservideos', 'created', 'dob',
>  > 'gender', 'number_friends', 'liketomeet', 'htmlcodes', 'aim', 'movies',
>  > 'password', 'books', 'profilepic', 'number_usermessages', 
> 'email_subscribe',
>  > 'number_communities']
>  >
>  >  so i want this to become
>  >
>  >  r.rating
>  >  r.last_name
>  >  r.pageviews and so on
>  >  r.username
>  >  r.photos()
>  >  and so on
>  >
>  >  but
>  >
>  >  i want to set the keys of the user row as the keys of User self
>  >  but i m not sure how to do it
>  >
>  >          for i in self._user.keys():
>  >              self[i]=self._user[i]
>  >
>  >  gives an error
>  >  Traceback (most recent call last):
>  >    File "<stdin>", line 1, in <module>
>  >    File "api.py", line 40, in __init__
>  >      self[i]=self._user[i]
>  >  AttributeError: teenwag instance has no attribute '__setitem__'
>  >
>  >  You can do something like
>  >
>  >  self.update(_user)
>  >
>  >  doesnt work either
>  >  Traceback (most recent call last):
>  >    File "<stdin>", line 1, in <module>
>  >    File "api.py", line 39, in __init__
>  >      self.update(self._user)
>  >  AttributeError: user instance has no attribute 'update'
>  >
>  >  Any thoughts on how to set this?
>  >
>  >  class User:
>  >      """user object
>  >      """
>  >
>  >      def __init__(self, id):
>  >          self._id = id
>  >          self._user=db.query('select * from users where
>  > id=$id',vars=locals())
>  >          if not self._user:
>  >              self._validuser=False
>  >              self._username=''
>  >              self._firstname=''
>  >              self._lastname=''
>  >              self._dob=''
>  >              self._gender=''
>  >              self._sex=''
>  >          else:
>  >              self._user=self._user[0]
>  >              self._validuser=True
>  >          self._username=self._user.username
>  >          self._firstname=self._user.first_name
>  >          self._lastname=self._user.last_name
>  >          self._dob=self._user.dob
>  >          self._gender=self._user.gender
>  >          self._sex=self._user.gender
>  >          for i in self._user.keys():
>  >              self[i]=self._user[i]
>  >      def userrow(self):
>  >          return db.query('select * from users where
>  > id=$self._id',vars=locals())[0]
>  >      def photos(self):
>  >          return db.query('select pic,id, username from userpics where
>  > user_id=$self._id',vars=locals())
>  >
>  >
>  >
>  >  >  >
>  >
>
>
>
>  >
>
>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web.py" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/webpy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to