booktest-4

1.增加视图函数

#Http://127.0.0.1/books
def show_books(request):
    books = BookInfo.objects.all()
    return render(request,'booktest/show_books.html',{'books':books})

2.在booktest的视图模板文件夹下面新增show_books.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    图书信息如下:
    <ul>
        {%for book in books%}
            <li>{{book.btitle}}</li>
        {%endfor%}
    </ul>
</body>
</html>

 3.修改app urls.py

from django.conf.urls import url
from . import  views

urlpatterns=[
    url(r'^index$',views.index),
    url(r'^index2$',views.index2),
    url(r'^books$',views.show_books),
]

4.访问Http://127.0.0.1/books

5.修改show_books视图模板

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>显示所有图书信息</title>
</head>
<body>
    图书信息如下:
    <ul>
        {%for book in books%}
            <li><a href="books/{{book.id}}">{{book.btitle}}</a></li>
        {%endfor%}
    </ul>
</body>
</html>

7.增加视图模板detail.html

8.增加视图函数

#Http://127.0.0.1/books/3
def detail(request,bid):
    book = BookInfo.objects.get(id=bid)
    heros = book.heroinfo_set.all()
    return render(request,'booktest/detail.html',
           {'book':book,'heros':heros})

9.修改视图模板detail.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>显示图书关联的英雄信息</title>
</head>
<body>
    <h1>{{book.btitle}}</h1>
    英雄信息如下:
    <ul>
        {% for hero in heros %}
            <li>{{hero.hname}}--{{hero.hcomment}}</li>
        {% empty %}
            <li>没有英雄信息</li>
        {% endfor %}
    </ul>
</body>
</html>

10.修改app的urls.py

from django.conf.urls import url
from . import  views

urlpatterns=[
    url(r'^index$',views.index),
    url(r'^index2$',views.index2),
    url(r'^books$',views.show_books),
    url(r'^books/(\d+)$',views.detail),
]

11.访问Http://127.0.0.1:8000/books

12.点击某个图书,显示图书的名字以及相关的英雄信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值