2015-12-14 32 views
0

對不起,如果標題沒有意義,但我不知道要如何說出它,首先我會告訴你我的代碼。django查看與查詢集匹配的變量

def page(request, page_lang='eng', page_title='home'): 

    page_lang = SiteLanguage.objects.get(title=page_lang) 
    context = { 
     'page_lang': page_lang, 
     'page_content': page_lang.page_title 
    } 

所以在我的方面,我想有鑰匙「PAGE_CONTENT」與之相匹配的值page_lang.home所以我能避免把一堆邏輯到代碼。這可以做到嗎?

+0

又是什麼page_lang.home – wim

+2

我覺得你的變量命名是混亂 –

+0

是一些內容,我想已顯示在主頁上。我只是無法弄清楚如何將該字符串添加到查找 – deltaskelta

回答

1

你必須使用getattr(),如果page_lang是一個字符串page_lang應該被重新命名爲page_lang_name

def page(request, page_lang_name='eng', page_title='home'): 
    page_lang_obj = SiteLanguage.objects.get(title=page_lang_name) 
    context = { 
     'page_lang': page_lang_obj, 
     'page_content': getattr(page_lang_obj, page_title) 
    }