首页 > 其他 > 详细

django一对多模型以及如何在前端实现

时间:2018-11-26 21:19:41      阅读:175      评论:0      收藏:0      [点我收藏+]

models.py

class xm(models.Model):
    xmID=models.AutoField(primary_key=True)
    xmTitle=models.CharField(‘项目标题‘,max_length=50)
    xmDate=models.DateField(‘时间‘,auto_now_add=True)
  

    class Meta:
        db_table="std_web_xm"
        verbose_name="项目概况"
        verbose_name_plural=verbose_name

    def __unicode__(self):
        return self.title
    def __str__(self):
        #强制转换为int类型
        return str(self.xmID)#为了使在xadmin中成功显示为xmID

class xmProgress(models.Model):
    xmProgress_ID=models.AutoField(primary_key=True)
    xmProgress = models.CharField(‘项目进展‘, max_length=50, blank=True)
    xmDesc = models.CharField(‘详情‘, max_length=50, blank=True)
    #关联主键xmID ,级联删除
    cid=models.ForeignKey("xm",on_delete=models.CASCADE)
    xmProgress_Date=models.DateField(‘更新时间‘,auto_now_add=True)
class Meta:
        db_table="std_web_xmProgress"
        verbose_name="项目详情"
        verbose_name_plural=verbose_name

    def __unicode__(self):
        return self.title

注册到adminx.py中

class XmAdmin(object):
    list_display = [‘xmTitle‘,‘xmDate‘]
    #style_fields = {"xmContent": "ueditor"}

class XmProgressAdmin(object):
    list_display=[‘cid‘,‘xmProgress‘,‘xmProgress_Date‘,‘xmDesc‘]

xadmin.site.register(xm,XmAdmin)
xadmin.site.register(xmProgress,XmProgressAdmin)

views.py

def xm_detail(request,xmID):
    xm_detail=xm.objects.get(pk=xmID)
    xmProgress_detail=xmProgress.objects.filter(cid=xm_detail)
    return render(request,‘xmgk/xmgk_detail.html‘,{‘xmProgress_detail‘:xmProgress_detail,‘xm_detail‘:xm_detail})

前端代码

 


{% for line in xmProgress_detail %}
<tr>
  <td>{{ line.xmProgress_Date|date:"Y-m-d" }}</td>
  <td>{{ line.xmProgress }}</td>
  <td>{{ line.xmDesc }}</td>
</tr>

{% endfor %}

 

django一对多模型以及如何在前端实现

原文:https://www.cnblogs.com/1998lu/p/10022927.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!