2011-02-28 48 views
1

這是earlier question的後續操作。我使用下面的代碼來獲取用戶的朋友,然後將它們與我的網站的用戶進行比較,以顯示「朋友已在使用此網站」列表。將twitter用戶與Django/Python中的網站用戶進行比較的方法

它的工作完美,但這是一個有效的方法嗎?任何建議?

在views.py

# Get Twitter Friends 
api = twitter.Api(consumer_key='TWITTER_TOKEN', 
         consumer_secret='TWITTER_SECRET', 
         access_token_key='request.user.get_profile.oauth_token', 
         access_token_secret='request.user.get_profile.oauth_secret') 
friends = api.GetFriendIDs(request.user.username) 

# Compare friends with High Five users  
profiles = Profile.objects.filter(twitter_id__in = friends['ids']) 

在template.html

<h2>Friends</h2> 
    <ul> 
    {% for profile in profiles %} 
     <li> 
      <a href="/user/{{ profile.user.username }}"> 
       <img src="{{ profile.profile_image_url }}" /> 
      </a> 
     </li> 
    {% endfor %} 
    </ul> 
+0

爲什麼這應該是低效的?除了執行兩個不同的查詢之外,還應該有其他哪些選項?我們必須知道你的特定用例是什麼,但不提供更多連貫的信息? – 2011-02-28 04:06:41

回答

0

你做正確的事。你關心什麼?頁面加載是否緩慢?如果是這樣,請考慮加載沒有此信息的頁面,然後使用ajax調用來獲取正在使用該站點的朋友列表。這樣,至少你可以讓你的用戶看着一個加載圖形的頁面,上面寫着「獲取朋友列表.....」,而不是等待很長時間才能加載頁面。

+0

謝謝..這不是我所關心的。我只是在這個新的,喜歡檢查,並確保我有效地做到這一點。我喜歡AJAX的想法,並需要重新研究這些方法。 :) – Brenden 2011-03-01 00:07:13

相關問題