Django城市信息查询功能

这篇具有很好参考价值的文章主要介绍了Django城市信息查询功能。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

基于 Pythgo的 Django 框架,编程实现一个 WEB 程序,为用户提供 城市信息查询功能。用户可输入一个城市名,输出其所在省份名称和邮编 等信息。例如,输入“桂林市”,输出“广西壮族自治区”和“541000”等 城市相关信息。

数据准备阶段

Django城市信息查询功能Django城市信息查询功能

 版本推荐

本教程的django为4.0.3,python版本为3.10.4,推荐使用,如果不是这些版本的,django,python会出现错误

Django城市信息查询功能

项目实现阶段

Django 工程的建立

在桌面上新建立一个django文件夹,在vscode的终端打开此文件夹,在终端中创建工程项目,如:

 django-admin startproject GongCheng

可以看到左侧资源管理器左侧出现了GongCheng

Django城市信息查询功能Django城市信息查询功能

 并在终端运行manager.py文件:

Desktop\django\GongCheng> python manage.py runserver

为项目添加两个App,一个作为主页,一个作为省份查询:

PS C:\Users\用户\Desktop\django\GongCheng> python manage.py startapp homeApp
PS C:\Users\用户\Desktop\django\GongCheng> python manage.py startapp aboutApp

添加完成后面,对应左边资源管理器:

Django城市信息查询功能

 在项目目录下,创建static文件,在此不便多述,上文件链接链接:https://pan.baidu.com/s/1PxzFdoz7ucJ_rHbgn43Jpg?pwd=yx17 
提取码:yx17Django城市信息查询功能

 路由的配置及访问

在项目路由下的settings.pu文件中的INSTALLED_APPS[ ]输入两个app的名称:Django城市信息查询功能

渲染界面

完成上面的配置后面,打开homeApp文件夹的views.py,使其通过代码返回页面,代码入下:

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


# Create your views here.
def home(request):
    return render(request, 'home.html')

然后在homeApp下建立templates文件夹,在该文件夹中建立home.html:Django城市信息查询功能

并且在html中输入以下代码,使文件与static文件进行连接,获取css,js样式:

 注:有一些人的Django的版本是2.2.4的,小编的Django版本是最新版本的,所以2.2.4版本的同学,需要在HTML的{% load static %}上改为{% load staticfiles %}

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

<body>

</body>

</html>

 设置网站根访问路径,在项目根目录找到urls.py找到urlpatterns字段,然后添加首页路由:

from django.contrib import admin#已经有了
from django.urls import path#已经有了
from homeApp.views import home
from django.conf.urls import include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('',home,name='home'),
    path('aboutApp/',include('aboutApp.urls')),
]

在aboutApp的目录下创建urls.py,再在aboutApp\urls.py里面添加

from django.urls import path
from . import views


app_name = 'aboutApp'

urlpatterns = [
         path('about/',views.about,name='about'),
]

使app_name拥有名称。

打开aboutApp\views.py,输入以下代码:

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

def about(request):
    html='<html><body>听我说谢谢你</body></html>'
    return HttpResponse(html)

然后在终端输入:python manage.py runserver    运行程序,打开出来的链接

主页效果:Django城市信息查询功能

aboutApp页面效果:Django城市信息查询功能

最后,在根目录的setting.py的INSTALLED_APPS[ ]上方的ALLOWED_HOSTS = [ ]添加 ‘*’ :

ALLOWED_HOSTS = ['*',]

添加富文本模型

 富文本的安装:需要手动安装下载包,下载网址:https://github.com/twz915/DjangoUeditor3/ 然后安装终端用cd定义到DjangoUeditor3-master,然后输入以下命令即可完成安装:

python manage.py install

 需要将DjangoUeditor3-master项目中的DjangoUeditor文件夹加入到当前GongCheng项目根目录中:

在项目根目录下添加DjangoUeditor

Django城市信息查询功能

添加好文件后,在项目路由下的settings.pu文件中的INSTALLED_APPS[ ]添加DjangoUeditorDjango城市信息查询功能

 在项目根目录找到urls.py找到urlpatterns字段,然后添加富文本路由:

path('ueditor/',include('DjangoUeditor.urls')),

在此,完成了富文本的配置

创建城市与省份模型

打开aboutApp的models.py文件,在该文件中添加省份模型(Province)

from django.db import models
from DjangoUeditor.models import UEditorField 
from django.utils import timezone

class Province(models.Model):
    name = models.CharField(max_length=10,verbose_name='省份')
    capital= models.CharField(max_length=8, verbose_name='首府')
    concise=UEditorField(u'省份简介',default='',width=800,height=300,)
    class Meta:
            verbose_name ='数据'
            verbose_name_plural ='数据'
    def __str__(self):
        return self.name



class City(models.Model):
    province = models.ForeignKey(Province,related_name='city',verbose_name='省份',on_delete=models.CASCADE)
    name = models.CharField(max_length=10,verbose_name="城市")
    mail = models.IntegerField(null=False,verbose_name='邮政编码')
    concise=UEditorField(u'城市简介',default='',width=800,height=300)
    class Meta:
        verbose_name ='城市数据'
        verbose_name_plural ='城市数据'

然后在根目录的setting.py添加以下代码:

import os

STATICFILES_DIRS = (
   os.path.join(BASE_DIR, "static"),
)
MEDIA_URL='/media/'
MEDIA_ROOT=os.path.join(BASE_DIR,'media/')

然后在终端输入:python manage.py makemigrations 

回车会看到模型已经建立Django城市信息查询功能

继续在终端输入;python manage.py migrate       

回车:Django城市信息查询功能

模型就在后端了。 接下来我们注册超级管理员用户,就可以在后台管理系统看到模型了。

后台管理系统

因为django自己会建立后台管理系统,所以我们只需要在注册创建管理员用户账号:

python manage.py createsuperuser

回车后出现了页面,按照以下输入即可:Username(管理员的账号,自己随意取)

Django城市信息查询功能

通过 http://127.0.0.1:8000/admin/ 进入页面,如果打不开,请在终端输入python manage.py runserver 运行程序

 Django城市信息查询功能

 我们通过账号密码进入后台管理系统后,我们是看不到模型的,我们需要在aboutApp中的admin.py文件,编辑以下代码:

from django.contrib import admin
from .models import *

class Cityline(admin.StackedInline):
    
    model = City
    extra = 1     
    

class ProvinceAdmin(admin.ModelAdmin):
    inlines = [Cityline,]


admin.site.register(Province, ProvinceAdmin)
admin.site.site_header='地市数据'
admin.site.site_title='地市数据'

刷新后台界面,我们可以看到模型已经出来了:Django城市信息查询功能

 我们可以浏览一下我们的界面,内部已经覆盖了一对多的模型,富文本文件:

Django城市信息查询功能

 Django城市信息查询功能

 我们可以后台输入数据,然后传到对应页面啦。

本次的分享到此为止,晚一点上完课再回来更新。文章来源地址https://www.toymoban.com/news/detail-457100.html

到了这里,关于Django城市信息查询功能的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 域名批量查询功能常用查询方法教程

    一些用户在抱怨,要找到好域名怎么就那么不容易呢,能不能让我批量查下不含0的数字啊,能不能查下不含4的数字啊,能不能查下AABBB这样的域名啊…… 别着急,这就给您支招啦:通过西部数码强大的批量查询功能,您想要的米,统统都能查到。接下来就回答下大家长遇到

    2023年04月11日
    浏览(56)
  • Elasticsearch(十一)搜索---搜索匹配功能②--range查询和exists查询

    继上一节学习了ES的搜索的查询全部和term搜索后,此节将把搜索匹配功能剩余的2个学习完,分别是range搜索和exists搜索 range查询用于范围查询,一般是对数值型和日期型数据的查询。使用range进行范围查询时,用户可以按照需求中是否包含边界数值进行选项设置,可供组合的

    2024年02月09日
    浏览(52)
  • Elasticsearch(十二)搜索---搜索匹配功能③--布尔查询及filter查询原理

    本节主要学习ES匹配查询中的布尔查询以及布尔查询中比较特殊的filter查询及其原理。 复合搜索,顾名思义是一种在一个搜索语句中包含一种或多种搜索子句的搜索。 布尔查询是常用的复合查询,它把多个子查询组合成一个布尔表达式,这些子查询之间的逻辑关系是\\\"与\\\",即

    2024年02月04日
    浏览(51)
  • Elasticsearch(十)搜索---搜索匹配功能①--查询所有文档和term级别查询

    之前的学习我们已经了解了搜索的辅助功能,从这一章开始就是ES真正核心的功能,搜索。针对不同的数据类型,ES提供了很多搜索匹配功能:既有进行完全匹配的term搜索,也有按照范围匹配的range搜索;既有进行分词匹配的match搜索,也有按照前缀匹配的suggesr搜索。我们同样

    2024年02月11日
    浏览(58)
  • ElasticSearch的复杂查询与脚本功能

    Elasticsearch是一个基于分布式搜索和分析引擎,它可以为应用程序提供实时、可扩展的搜索功能。Elasticsearch是一个基于Lucene的搜索引擎,它提供了一个分布式多用户能力的全文搜索引擎。Elasticsearch是一个基于Lucene的搜索引擎,它提供了一个分布式多用户能力的全文搜索引擎。

    2024年02月21日
    浏览(37)
  • 【业务功能篇07】Mysql 模糊查询

    业务场景:我们对不同的业务逻辑进行数据处理时,多数是离不开需要模糊匹配的时候,比如要获取该表某个字段中,含有某个具体的字符内容,过滤出业务想要的数据。  这里介绍有这么几种:  通配符的分类 \\\"%\\\" 百分号通配符: 表示任何字符出现任意次数 (可以是0次)。

    2024年02月06日
    浏览(42)
  • 实现SSM简易商城项目的商品查询功能

    在SSM(Spring+SpringMVC+MyBatis)框架下,我们可以轻松地实现一个简易商城项目。本博客将重点介绍如何实现商品查询功能,帮助读者了解并掌握该功能的开发过程。 1. 创建数据库表 首先,在数据库中创建商品表,包括商品ID、名称、价格、库存等字段。可以使用MySQL或其他关系

    2024年02月11日
    浏览(28)
  • 微信小程序之页面内搜索查询功能

    具体操作可以参考博客原生微信小程序,搜索框(search)组件和微信小程序页面内搜索查询(无后台),再还有不懂的地方,可以直接去浏览我的demo 项目的github地址点击跳转,欢迎各位浏览和star✨。 原生微信小程序,搜索框(search)组件 微信小程序页面内搜索查询(无后台)

    2024年02月11日
    浏览(35)
  • Elasticsearch(十三)搜索---搜索匹配功能④--Constant Score查询、Function Score查询

    之前我们学习了布尔查询,知道了filter查询只在乎查询条件和文档的匹配程度,但不会根据匹配程度对文档进行打分,而对于must、should这两个布尔查询会对文档进行打分,那如果我想在查询的时候同时不去在乎文档的打分(对搜索结果的排序),只想过滤文本字段是否包含这

    2024年02月11日
    浏览(44)
  • ElasticSearch入门:使用ES来实现模糊查询功能

    本文针对在工作中遇到的需求:通过es来实现 模糊查询 来进行总结;模糊查询的具体需求是:查询基金/A股/港股等金融数据,要求可以根据 字段 , 拼音首字母 , 部分拼音全称 进行联想查询;需要注意的是,金融数据名称中可能不止包含汉字,还有英文,数字,特殊字符等

    2023年04月09日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包