Django城市信息查询功能如何实现
导读:本文共5319.5字符,通常情况下阅读需要18分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要:项目实现阶段Django 工程的建立在桌面上新建立一个django文件夹,在vscode的终端打开此文件夹,在终端中创建工程项目,如:django-adminstartprojectGongCheng可以看到左侧资源管理器左侧出现了GongCheng并在终端运行manager.py文件:Desktop\django\GongCheng>pythonmanage.pyrunserver为项目添... ...
目录
(为您整理了一些要点),点击可以直达。项目实现阶段
Django 工程的建立
在桌面上新建立一个django文件夹,在vscode的终端打开此文件夹,在终端中创建工程项目,如:
django-adminstartprojectGongCheng
可以看到左侧资源管理器左侧出现了GongCheng
并在终端运行manager.py文件:
Desktop\django\GongCheng>pythonmanage.pyrunserver
为项目添加两个App,一个作为主页,一个作为省份查询:
PSC:\Users\用户\Desktop\django\GongCheng>pythonmanage.pystartapphomeApp
PSC:\Users\用户\Desktop\django\GongCheng>pythonmanage.pystartappaboutApp
添加完成后面,对应左边资源管理器:
在项目目录下,创建static文件,在此不便多述
路由的配置及访问
在项目路由下的settings.pu文件中的INSTALLED_APPS[ ]输入两个app的名称:
渲染界面
完成上面的配置后面,打开homeApp文件夹的views.py,使其通过代码返回页面,代码入下:
fromdjango.shortcutsimportrender
fromdjango.shortcutsimportHttpResponseCreateyourviewshere.
defhome(request):
returnrender(request,'home.html')
然后在homeApp下建立templates文件夹,在该文件夹中建立home.html:
并且在html中输入以下代码,使文件与static文件进行连接,获取css,js样式:
注:有一些人的Django的版本是2.2.4的,小编的Django版本是最新版本的,所以2.2.4版本的同学,需要在HTML的{% load static %}上改为{% load staticfiles %}
{%loadstatic%}
<!DOCTYPEhtml>
<htmllang="zh-cn"><head>
<metacharset="utf-8">
<metahttp-equiv="X-UA-Compatible"content="IE=edge">
<metaname="viewport"content="width=device-width,initial-scale=1">
<title>首页</title>
<linkhref="{%static'css/bootstrap.css'%}"rel="stylesheet">
<linkhref="{%static'css/style.css'%}"rel="stylesheet">
<scriptsrc="{%static'js/jquery.min.js'%}"></script>
<scriptsrc="{%static'js/bootstrap.min.js'%}"></script>
</head><body>
</body>
</html>
设置网站根访问路径,在项目根目录找到urls.py找到urlpatterns字段,然后添加首页路由:
fromdjango.contribimportadmin#已经有了
fromdjango.urlsimportpath#已经有了
fromhomeApp.viewsimporthome
fromdjango.conf.urlsimportincludeurlpatterns=[
path('admin/',admin.site.urls),
path('',home,name='home'),
path('aboutApp/',include('aboutApp.urls')),
]
在aboutApp的目录下创建urls.py,再在aboutApp\urls.py里面添加
fromdjango.urlsimportpath
from.importviewsapp_name='aboutApp'
urlpatterns=[
path('about/',views.about,name='about'),
]
使app_name拥有名称。
打开aboutApp\views.py,输入以下代码:
fromdjango.shortcutsimportrender
fromdjango.shortcutsimportHttpResponsedefabout(request):
html='<html><body>听我说谢谢你</body></html>'
returnHttpResponse(html)
然后在终端输入:python manage.py runserver 运行程序,打开出来的链接
主页效果:
aboutApp页面效果:
最后,在根目录的setting.py的INSTALLED_APPS[ ]上方的ALLOWED_HOSTS = [ ]添加 ‘’ :
ALLOWED_HOSTS=['',]
添加富文本模型
富文本的安装:需要手动安装下载包,下载网址:https://github.com/twz915/DjangoUeditor3/ 然后安装,终端用cd定义到DjangoUeditor3-master,然后输入以下命令即可完成安装:
pythonmanage.pyinstall
需要将DjangoUeditor3-master项目中的DjangoUeditor文件夹加入到当前GongCheng项目根目录中:
在项目根目录下添加DjangoUeditor
添加好文件后,在项目路由下的settings.pu文件中的INSTALLED_APPS[ ]添加DjangoUeditor
在项目根目录找到urls.py找到urlpatterns字段,然后添加富文本路由:
path('ueditor/',include('DjangoUeditor.urls')),
在此,完成了富文本的配置
创建城市与省份模型
打开aboutApp的models.py文件,在该文件中添加省份模型(Province)
fromdjango.dbimportmodels
fromDjangoUeditor.modelsimportUEditorField
fromdjango.utilsimporttimezoneclassProvince(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,)
classMeta:
verbose_name='数据'
verbose_name_plural='数据'
defstr(self):
returnself.nameclassCity(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)
classMeta:
verbose_name='城市数据'
verbose_name_plural='城市数据'
然后在根目录的setting.py添加以下代码:
importosSTATICFILES_DIRS=(
os.path.join(BASE_DIR,"static"),
)
MEDIA_URL='/media/'
MEDIA_ROOT=os.path.join(BASE_DIR,'media/')
然后在终端输入:python manage.py makemigrations
回车会看到模型已经建立
继续在终端输入;python manage.py migrate
回车:
模型就在后端了。接下来我们注册超级管理员用户,就可以在后台管理系统看到模型了。
后台管理系统
因为django自己会建立后台管理系统,所以我们只需要在注册创建管理员用户账号:
pythonmanage.pycreatesuperuser
回车后出现了页面,按照以下输入即可:Username(管理员的账号,自己随意取)
通过http://127.0.0.1:8000/admin/ 进入页面,如果打不开,请在终端输入python manage.py runserver 运行程序
我们通过账号密码进入后台管理系统后,我们是看不到模型的,我们需要在aboutApp中的admin.py文件,编辑以下代码:
fromdjango.contribimportadmin
from.modelsimport*
classCityline(admin.StackedInline):model=City
extra=1classProvinceAdmin(admin.ModelAdmin):
inlines=[Cityline,]
admin.site.register(Province,ProvinceAdmin)
admin.site.site_header='地市数据'
admin.site.site_title='地市数据'
刷新后台界面,我们可以看到模型已经出来了:
我们可以浏览一下我们的界面,内部已经覆盖了一对多的模型,富文本文件:
读到这里,这篇“Django城市信息查询功能如何实现”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。
Django城市信息查询功能如何实现的详细内容,希望对您有所帮助,信息来源于网络。