2016-05-12 6 views
1

Frage, wie kann ich bekommen, redis Json-Daten in meiner Vorlage angezeigt werden? Aus irgendeinem Grund kann ich es nicht zur Arbeit bringen. Jede Hilfe würde sehr geschätzt werden.Wie redis JSON-Daten in meiner Vorlagenansicht anzeigen python django

Hier ist, was ich bisher habe meine Json-Daten gespeichert wird korrekt zu redis, aber ich kann immer noch nicht herausfinden, wie man es in meiner Vorlage zeigt. Also für obj.customer_name möchte ich, dass es von redis kommt und durch die JSON-Daten für meine Vorlage iteriert.

views.py

def home(request): 
    """Renders the home page.""" 
    assert isinstance(request, HttpRequest) 
    #obj = Customer.objects.all() 
    cust = Customer.objects.all() 
    da = serializers.serialize('json', cust, fields=('customer_id', 'customer_name')) 
    r_conn = redis.StrictRedis(host='172.16.1.98', port=6379, db=1) 
    r_conn.set('dimcert_cust', da) 
    cust_cache = r_conn.get('dimcert_cust') 
    obj = json.load(cust_cache) 


    return render(
     request, 
     'app/index.html', 
     { 
      'title':'Home Page', 
      'year':datetime.now().year, 
      'obj': obj, 
     } 
    ) 

home.html Vorlage

{% extends "app/layout.html" %} 

{% block content %} 

<div class="jumbotron"> 
    <h1>Customers</h1> 
</div> 

<div class="row"> 


    <div style="width: 40%; float:left"> 
     {% for obj in obj.all %} 
      <h3> {{obj.customer_name}} </h3> 
     {% endfor %} 

    </div>  
</div> 

{% endblock %} 

Hier ist meine model.py mit Customer-Klasse

from django.db import models 
import json 

class Customer(models.Model): 
    objects = models.Manager() 
    customer_id = models.IntegerField() 
    customer_name = models.CharField(max_length=255) 
    created_at = models.DateField 
    updated_at = models.DateField 

Antwort

2

Sie die Json zu einem Wörterbuch Umwandlung mit obj = json.load(cust_cache) Also in Ihrer Vorlage, was Sie haben sollten, ist so etwas wie:

Als Fußnote, kann ich darauf hinweisen, dass redis hashes ist eine bessere Möglichkeit, Ihre Daten zu speichern.

+0

Danke! @ e4c5 – Snowman08

+0

Ich bin froh, dass ich geholfen habe. – e4c5

Verwandte Themen