Django城市信息查询功能(2)

数据模型的渲染

本次我们将通过views进行前端的渲染

我们在about.App目录中的views,将里面的数据更改为:

from django.shortcuts import render
from django.shortcuts import HttpResponse

from .models import *

def about(request):
    
    #list=Province.objects.all()
    cy=City.objects.all()
    ci={'cylist':cy,}
    return render(request, 'about.html',ci)

并且在about.App目录中新建templates文件夹,在文件夹里新建文件about.html:

并且在该thml里面添加以下代码进行前端的渲染:

{% load static %}
<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>表格页面</title>
    <link href="{% static 'css/bootstrap.css' %}" rel="stylesheet">
    <link href="{% static 'css/style.css' %}" rel="stylesheet">
    <script src="{% static 'js/jquery.min.js' %}"></script>
    <script src="{% static 'js/bootstrap.min.js' %}"></script>
    

</head>

<body><div class="container top">
    <div class="row">
        <div class="col-md-6">
            学号姓名
        </div>
        
        
    </div>
</div>
    <table class="table-bordered table-hover  "  border="1">
        <tr>
            <th>省份</th>
            <th>城市</th>
            <th>邮政编码</th>
            <th>详情</th>
        </tr>
        {% for i in cylist %}
        <tr>
            <th>{{i.province}}</th>
            <th>{{i.name}}</th>
            <th>{{i.mail}}</th>

            
            <th>详情</th>
           
            
            
        </tr>

        {% endfor %}

    </table>
</body>

</html>

在后台的简单输入数据(因为是例子,所以我不加太多数据):

 然后回到页面aboutApp/about,可以看到后台数据库的数据已经在页面上了:

建立详情页面

我们在about.App目录中的views.py,添加以下数据:

from django.shortcuts import get_object_or_404


def Datil(request, id):
    one = get_object_or_404(City, id=id)
    
    return render(request, 'datil.html', {'one':one}
    )  

在about.App目录中的urls.py 的urlpatterns中加入:

path('datil/<int:id>/', views.datil, name='datil'),#详情

 在about.App目录中templates文件夹建立一个datil.html,并且在里面输入:

{% load static %}
<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>产品页面</title>
    <link href="{% static 'css/bootstrap.css' %}" rel="stylesheet">
    <link href="{% static 'css/style.css' %}" rel="stylesheet">
    <script src="{% static 'js/jquery.min.js' %}"></script>
    <script src="{% static 'js/bootstrap.min.js' %}"></script>
    <!--url 'newsApp:newDetail' -->

</head>

<body >
    <div class="container top">
        <div class="row">
            <div class="col-md-6">
               学号 姓名
            </div>
            
            
        </div>
    </div>
<h1>{{one.name}}</h1>
<p>{{one.concise}}</p>


 


</body>

</html>

 在about.html的<th>详情</th>标签中添加以下代码,进行链接

<th><a href="{% url 'aboutApp:datil' i.id  %}" >详情</a></th>

然后呢,对于详情页面我们已经做好了,试试效果:

 点击详情

 无论在后台输入多少数据,该城市对应的ID会链接相应的页面。

在主页进行链接

回到主页面,在homeApp的home.HTML为听我说谢谢你!添加链接:

{% load static %}
<!DOCTYPE html>
<html lang="zh-cn">

<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>首页</title>
    <link href="{% static 'css/bootstrap.css' %}" rel="stylesheet">
    <link href="{% static 'css/style.css' %}" rel="stylesheet">
    <script src="{% static 'js/jquery.min.js' %}"></script>
    <script src="{% static 'js/bootstrap.min.js' %}"></script>
</head>
<div class="container top">
    <div class="row">
        <div class="col-md-6">
           学号姓名
        </div> 
    </div>
</div> 
<h1>
    <a href="{% url 'aboutApp:about' %}" >听我说谢谢你!</a>
</h1>

<body>

</body>

</html>

 然后保存,可以看到显示界面:

点击界面,我们就可以进入到about界面了。 在此,我们的内容也将告一段落,查询功能我正在整理,更新数据不定,界面美化和查询功能一起更新。下次见!点赞关注加收藏哦!

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django自带的django-cities和django-countries是两个非常有用的插件,可以帮助您实现国家地区选择功能django-countries是一个包含所有国家和地区信息的插件,可以帮助您实现国家和地区选择功能。使用django-countries,您可以轻松地获取国家和地区的信息,例如国家名称、国旗、货币等等。此外,django-countries还支持多种语言,可以帮助您实现多语言的国家地区选择功能django-cities是一个包含世界各地城市信息的插件,可以帮助您实现省份和城市选择功能。使用django-cities,您可以轻松地获取城市信息,例如城市名称、所属省份、经纬度等等。此外,django-cities还支持模糊查询和多语言功能,可以帮助您实现更加灵活和便捷的省份和城市选择功能。 在使用这两个插件时,您需要在Django的settings.py文件中进行配置,例如: ```python INSTALLED_APPS = [ # ... 'django_countries', 'cities', # ... ] ``` 然后可以在模型中引入这些插件提供的模型类,例如: ```python from django_countries.fields import CountryField from cities.models import City, Country class UserProfile(models.Model): # ... country = CountryField() city = models.ForeignKey(City, on_delete=models.PROTECT) # ... ``` 这样就可以在用户资料中添加国家和城市信息,并且可以使用插件提供的模板标签和表单字段来实现国家地区选择功能。 希望这些信息能够对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值