首页 编程教程正文

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

piaodoo 编程教程 2020-02-02 11:58:19 1135 0 python教程

这篇文章主要介绍了django一对多模型以及如何在前端实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

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 %}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

版权声明:

本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。

有关影视版权:本站只供百度云网盘资源,版权均属于影片公司所有,请在下载后24小时删除,切勿用于商业用途。本站所有资源信息均从互联网搜索而来,本站不对显示的内容承担责任,如您认为本站页面信息侵犯了您的权益,请附上版权证明邮件告知【754403226@qq.com】,在收到邮件后72小时内删除。本文链接:https://www.piaodoo.com/650.html

搜索