From 0a8ca2a20d740e9decd95708c89d87184b1d91eb Mon Sep 17 00:00:00 2001 From: Evgeny Fadeev Date: Tue, 28 Sep 2010 18:54:27 -0400 Subject: bug in generic openid login and a query speedup --- askbot/deps/django_authopenid/backends.py | 17 +++++++---------- askbot/models/question.py | 8 ++++++++ 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/askbot/deps/django_authopenid/backends.py b/askbot/deps/django_authopenid/backends.py index 664307d4..554afda5 100644 --- a/askbot/deps/django_authopenid/backends.py +++ b/askbot/deps/django_authopenid/backends.py @@ -68,16 +68,13 @@ class AuthBackend(object): elif method == 'openid': provider_name = util.get_provider_name(openid_url) - if login_providers[provider_name]['type'].startswith('openid'): - try: - assoc = UserAssociation.objects.get( - openid_url = openid_url, - provider_name = provider_name - ) - user = assoc.user - except UserAssociation.DoesNotExist: - return None - else: + try: + assoc = UserAssociation.objects.get( + openid_url = openid_url, + provider_name = provider_name + ) + user = assoc.user + except UserAssociation.DoesNotExist: return None elif method == 'email': diff --git a/askbot/models/question.py b/askbot/models/question.py index c450eed9..7d532dec 100644 --- a/askbot/models/question.py +++ b/askbot/models/question.py @@ -180,6 +180,14 @@ class QuestionManager(models.Manager): #relevance will be ignored here qs = qs.order_by(orderby) qs = qs.distinct() + qs = qs.select_related( + 'last_activity_by__id', + 'last_activity_by__username', + 'last_activity_by__reputation', + 'last_activity_by__gold', + 'last_activity_by__silver', + 'last_activity_by__bronze' + ) return qs, meta_data #todo: this function is similar to get_response_receivers -- cgit v1.2.3-1-g7c22