2017-09-27 74 views
0

在下面的代碼而不是{{ i.user }}我想從另一個表中訪問值爲{{ i.user }}作爲匹配值。如何HTML內完成它從DJango中的HTML模板訪問數據庫模型

{% for i in obj reversed %} 
<div class="container"> 
<blockquote> 
    <header> {{ i.topic }} {{ i.user }} </header> 
    <p> {{ i.desc }} </p> 
    <footer> {{ i.time }} </footer> 
</blockquote> 
{% endfor %} 
</div> 

這裏是我的模型

from django.db import models 

class Accounts(models.Model): 
    name=models.CharField(max_length=30) 
    phone=models.CharField(max_length=20,unique=True) 
    mail=models.EmailField() 
    password=models.CharField(max_length=20) 

    def __str__(self): 
     return self.name 

class BlogPost(models.Model): 
    user=models.CharField(max_length=30) 
    topic=models.CharField(max_length=100) 
    desc=models.CharField(max_length=1000) 
    likes=models.IntegerField(null=True,default=0) 
    time=models.DateTimeField(null=True) 

    def __str__(self): 
     return self.user 

而且我要提前使用Blogspot.user{{ i.user }}模板

由於得到Accounts值...

+0

你可以添加你的模型? –

+0

在問題 –

+0

中添加爲了有類似的東西,你需要模型之間的關係。使用ForeignKey。您的用戶字段與帳戶相關的方式如何? –

回答

1
from django.contrib.auth.models import AbstractBaseUser 

class Accounts(AbstractBaseUser): 

    name = models.CharField(max_length=30) 
    phone = models.CharField(max_length=20,unique=True) 
    mail = models.EmailField() 
    password = models.CharField(max_length=20) 

    def __str__(self): 
     return self.name 

class BlogPost(models.Model): 
    user = models.ForeignKey(Accounts, related_name='accounts') 
    topic = models.CharField(max_length=100) 
    desc = models.CharField(max_length=1000) 
    likes = models.IntegerField(null=True,default=0) 
    time = models.DateTimeField(null=True) 

    def __str__(self): 
     return self.user 

現在,使用外鍵喲你可以訪問模板中的賬戶模型屬性。