2014-10-01 2 views
0

매우 간단하지만 어떻게 해야할지 모르겠습니다. 난 당신이 볼 수 있듯이, 등록 자체의 저장에 ElementoDeRed 요소를 사용하는 다음 models.pyDjango는 템플릿에 ManytoManyField가 사전에 있음을 나타냅니다.

class ElementoDeRed(models.Model): 

    IP_Address = models.CharField(max_length=200, primary_key= True) 
    MAC_Address = models.CharField(max_length=200) 
    offset_bytes = models.CharField(max_length=200) 
    transfered_bytes = models.CharField(max_length=200) 
    time = models.CharField(max_length=200) 
    previous_bytes = models.CharField(max_length=200) 
    previous_previous_bytes = models.CharField(max_length=200) 


    class Meta: 
     verbose_name = 'Dispositivos en mi nube' 
     verbose_name_plural = 'Dispositivos en mi nube' 

    def __unicode__ (self): 
     return smart_unicode(self.IP_Address) 

class Register(models.Model): 
    user = models.ForeignKey(User) 
    network_element = models.ManyToManyField(ElementoDeRed) 
    registered_date = models.DateTimeField(null=True,blank=True) 

    def __unicode__ (self): 
     #return smart_unicode(self.network_element) 
     return smart_unicode("%s: %s" % (self.user,self.network_element.all()[0])) 

을 얻었다.

것은 내가 좋아하는 내 템플릿 뭔가 보여주고 싶은 것입니다 :

"사용자 < '사용자'>이 IP로 구성된 다음 장치가 있습니다 < '여기서 IP_Address'> 맥 : <를 'Mac_Address '> .... "

템플릿에 렌더링하는 것은"dict_username_registers "라고하는 var이며, 사전 마녀 키 값은 사용자 이름이며이 항목에 할당되는 항목은"레지스터 "필드입니다. 그러나 메신저 같은 것을 받고 :

내가 HTML에 해당 필드에 액세스 할 수있는 방법을
david: [<Register: david: 10.0.0.3>, <Register: david: 10.0.0.1>] , Alice: <Register: Alice: 10.0.0.2>] 

???? 감사합니다. 다른 뭔가가 필요하면 알려줘!

+1

here에 대한 자세한 내용? 그리고 왜'register.network_element.all'을 반복해서 템플릿에 직접 관계를 접근하지 않습니까? –

답변

0

{% for register in dict_username_registers %} 
    accessing date {{register.registered_date}} 
{% endfor %} 

당신 차 같은 dict_username_registers의 요소를 반복 할 수는 DICT 정의되는 방법 해당 태그