2014-09-25 110 views
0

我試圖從特定用戶的所有微博,但在我迭代模板扔鳴叫我得到'User' object is not iterable「用戶」對象不是可迭代

查看

tweets = User.objects.get(username__iexact='username') 
return render_to_response('timeline.html', {'tweets': tweets}) 

模板

{% for tweet in tweets %} 
    <h3>{{tweet.text}}</h3> 
{% endfor %} 

什麼是其他選項來實現這一目標?

+2

爲什麼你會得到一個用戶,如果你想通過推文迭代? – 2014-09-25 17:44:20

+2

你想做什麼? '.get()'給你一個對象,而不是queryset,所以你不能迭代。其次,用戶對象通常不具有「文本」屬性。你有一個推特模型,它看起來如何? – karthikr 2014-09-25 17:44:27

回答

2

您正在將用戶對象作爲推文傳遞給您的模板。你可能需要這樣的東西:

user = User.objects.get(username__iexact='username') 
return render_to_response('timeline.html', {'tweets': user.tweets}) 
+0

或者可能'user.tweet_set.all()',這取決於模型的設置。 – souldeux 2014-09-25 20:13:25