If the user is not logged in, auth.user will return None, so you can't do 
auth.user.id. Instead, you should use auth.user_id, which will return None 
if not logged in.

Anthony

On Sunday, August 4, 2013 12:04:16 PM UTC-4, Mark Finkelstein wrote:
>
> I get  the following error for trying that:
> print db.auth_user[auth.user.id]
> AttributeError: 'NoneType' object has no attribute 'id'
>
> I thought `auth.user` is supposed to be used to check if the user is 
> logged in?
>
> On Sunday, August 4, 2013 10:35:14 AM UTC-4, Massimo Di Pierro wrote:
>>
>> If you are not logged in db.auth_user[auth.user.id] is None.
>>
>>
>> On Sunday, 4 August 2013 09:10:09 UTC-5, Mark Finkelstein wrote:
>>>
>>> I have two lines of code that read as follows:
>>>
>>> if auth.user:
>>>     if db.auth_user[auth.user.id]['image']=='' or db.auth_user[auth.user
>>> .id]['image']==None:
>>>
>>> Recently, while logged in, I dropped all the tables, refreshed the page 
>>> and then got an Internal Error saying
>>>
>>>  if db.auth_user[auth.user.id]['image']=='' or db.auth_user[auth.user.id
>>> ]['image']==None:
>>> TypeError: 'NoneType' object has no attribute '__getitem__'
>>>
>>> I'm guessing it has to do with cookies saving the session, where the 
>>> web2py side recognizes what seems to be a session and building auth.user 
>>> based off of this, but I'm not quite sure why auth.user is built without a 
>>> query check of the database? I was wondering why this is?
>>>
>>

-- 

--- 
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/groups/opt_out.


Reply via email to