Obwohl ich einen kundenspezifischen Filter benutzt habe, um auf die Wörterbücher mit variablem Schlüssel zuzugreifen, kann ich nicht tun. Unten finden Sie das Code-Snippet.Konnte nicht auf Kontextwörterbuchwerte zugreifen, die variablen Schlüssel verwendend, der Filter in der Django Schablone verwendet
view.py
def DBConnect(request):
c = {}
c['dbs'] = get_all_db() #returns an array of db.
for db in c['dbs']:
c[db] = get_all_tables(db) #returns all the tables in db and storing in context dictionary with db name as key.
return render_to_response('test.html', c)
Als Beispiel wird C Folgenden enthalten: c = { 'DBS': [u'db1' , u'db2 '], u'db1': [U‘ tb1' , u'tb2 '], u'db2': [u'tb21' , u'tb22' ]}
app_filter.py
@filter.filter
def get_item(dictionary, key):
return dictionary.get(key)
Test.html .... . ...
Bitte schlagen Sie vor, wenn ich den Kontext auf andere Weise übergeben sollte, um dieses Problem zu überwinden. Vielen Dank im Voraus.
Haben Sie passieren ‚dbs‘ in Testvorlage? Gemäß dem obigen Code geben Sie c ein, das ein Wörterbuch ist, das als einen seiner Schlüssel 'dbs' hat. –
Danke Rohan und AKS für deine Antworten. Ich bin ziemlich neu im Django-Framework. Ich werde diese Lösung implementieren und als Antwort markieren. Ich bin mir sehr sicher, dass beide Lösungen die Arbeit machen werden. Danke AKS für die Erklärung, das hilft mir wirklich, einige der Dinge zu verstehen, die mit Django zu tun haben. Danke euch beiden nochmal. +1 für euch beide .. :-) – Amit
@Amit: Danke für die Kommentare und wir helfen gerne weiter. Bitte lesen Sie auch [Was soll ich tun, wenn jemand meine Frage beantwortet?] (Http://stackoverflow.com/help/someone-answers). – AKS