2017-04-09 134 views
-4
def home(request): 
    context = populate_user_context(request, user.username) 

    val=amqp.consumer() 

    return render(request, "home.html", context, "Content-type:text/HTML", 200, None) 



def populate_user_context(request,username): 
    user = User.objects.get(username=username) 
    context={'first_name':(user.first_name or None), 
     'last_name':(user.last_name or None), 
     'email':(user.email or None) 
     } 
    return context 

當函數home被調用時。它構建上下文,然後調用消費者功能。消費者函數返回一個字典。如果它返回一個字典,那麼我應該再次調用它,直到它不返回(此部分尚未編碼)。最後,我必須將其添加到上下文並呈現給home.html。構造Python中的字典詞典

每個字典就像{'a':val1,'b':val2}。因爲我不知道它可能會返回多少字典。讓字典添加到上下文並渲染到home.html頁面的最佳方法是什麼? 早些時候,問題並不清楚,所以我編輯了。

+4

*我想建造像'{{ 「A」 的字典:VAL1, 「B」:值2},{ 「一」: val1,「b」:val2}}'* - 這不是一本字典。 –

+0

@Ahsanul Haque是對的,這是一套字典。請更具體地 –

+0

什麼是循環?顯示一個[mcve] –

回答

2

對於字典,你錯過了鍵,除非你想創建一個列表(在這種情況下,你使用了錯誤的括號)。

列表:

x = [{"a": 1, "b": 2}, {"a": 3, "b": 4}] 

詞典:

x= {"one": {"a": 1, "b": 2}, "two": {"a": 3,"b": 4}}