您当前的位置: 首页 >  django

11 Django模型 - 自连接

杨林伟 发布时间:2019-08-28 15:27:03 ,浏览量:1

对于地区信息,属于一对多关系,使用一张表,存储所有的信息

类似的表结构还应用于分类信息,可以实现无限级分类

新建模型AreaInfo,生成迁移

class AreaInfo(models.Model):
    atitle = models.CharField(max_length=20)
    aParent = models.ForeignKey('self', null=True, blank=True)

访问关联对象

上级对象:area.aParent
下级对象:area.areainfo_set.all()

加入测试数据(在workbench中,参见“省市区mysql.txt”)

在booktest/views.py中定义视图area

from models import AreaInfo
def area(request):
    area = AreaInfo.objects.get(pk=130100)
    return render(request, 'booktest/area.html', {'area': area})

定义模板area.html




    地区


当前地区:{{area.atitle}}

上级地区:{{area.aParent.atitle}}

下级地区:

    { %for a in area.areainfo_set.all%}
    {{a.atitle}}
    { %endfor%}



在booktest/urls.py中配置一个新的urlconf

urlpatterns = [
    url(r'^area/$', views.area, name='area')
]
关注
打赏
1688896170
查看更多评论

杨林伟

暂无认证

  • 1浏览

    0关注

    3183博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0522s