Hi, It seems that it is not possible to associate an entity to a User instance if the user authenticated with OpenID and did not provide an email.
>From the docs, it seems to be possible to create a User instance without an email using federated_identity: users.User(federated_identity="http://example.com/id/ajohnson") http://code.google.com/appengine/docs/python/users/userobjects.html So basically I can log in using OpenID, put something in the datastore that references the user from users.get_current_user(), and be left with a broken instance. This is discussed in an old thread here: http://groups.google.com/group/google-appengine/browse_thread/thread/3cd765b4b3644161/fa0a3abc376a870e?#fa0a3abc376a870e It was suggested that if the user object does not contain an email, one should ask the user from that. But can the email provided by user input be used to associate him with the current user object? I haven't found any documentation on how to fix this. Can I set the email address to the user object and will that help me to lookup any entities that the user created? Example: 1. User logged in using his blogger.com OpenID, no email was provided. The app created a Profile instance that references that apparently broken User instance. 2.User visits a restricted page that looks up his Profile with using the current_user object, the query finds the Profile entity but fails to create an object because of UserNotFoundError exception. Can the app catch this, ask the user for email, and fix the entity? If so, how? To prevent this happening in the future, can the app ask the user to provide email before creating the Profile object in the first place and somehow set the email so that the Profile instance will not raise an exception in the future? Thanks, Viðar -- You received this message because you are subscribed to the Google Groups "Google App Engine" 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/google-appengine?hl=en.
