2016-07-13 5 views
0

Dies ist meine Daten von django Modelle, wie Daten von django in AngularJS iterieren

subtaskList = [{'id':'1', 'name': 'sample name'}, 
{'id':'2', 'name': 'sample name 2'}, 
{'id':'3', 'name': 'sample name 3'}] 

dies ist mein Code:

var subtaskList = {{subtaskList}}; 


    var tasks = []; 
    for (var i = 0; i < subtaskList.length; i++) { 
     if (i % 5 == 0) tasks.push([]); 
     tasks[tasks.length-1].push(subtaskList[]); 
    } 
    return $scope.tasks = tasks; 

Wenn ich wie diese einfache Liste verwenden, funktioniert es:

subtaskList = ['wade', 'kobe','rose','rondo','butler', 'jordan']; 

aber wenn ich eine Wörterbuchliste verwende, wird es nicht:

subtaskList = [{'id':'1', 'name': 'sample name'}, 
    {'id':'2', 'name': 'sample name 2'}, 
    {'id':'3', 'name': 'sample name 3'}] 

mir bitte helfen ...

Dies ist mein HTML-Codes:

<div ng-controller="myCntrl"> 
    <tbody> 
    <tr ng-repeat="subtasks in tasks"> 
     <td ng-repeat="subtask in subtasks"> 
      {{ subtask.name }} 
      <div ng-model=""></div> 
     </td> 
    </tr> 
</tbody> 
+0

Am besten rendern Sie Ihr Dict in JSON als separaten Endpunkt und laden Sie es mit '$ http.get()'. –

+0

Wie werden Daten von Django an Angular übergeben? – Wtower

+0

var subtaskList = {{subtaskList}}. wo {{}} ist von django –

Antwort

0

Es ist nichts falsch mit dem JavaScript-Teil des Codes (die folgende Zeile unter der Annahme, ist der eigentliche Code Sie haben)

tasks[tasks.length-1].push(subtaskList[i]) 

Dies wird ein Array von Array von Objekten für Sie erstellen. Wenn es nicht funktioniert, ist es wahrscheinlich in der HTML-Vorlage Ihres angularjs-Codes. Kann der ng-repeat etwas enthalten, das mit einer Zeichenkette und nicht mit einem Objekt arbeitet? Würde es dir etwas ausmachen, diesen Teil zu teilen?

+0

sicher ... danke ... Ich werde meine Frage aktualisieren –

+0

Ich habe bereits meine Frage aktualisiert –