<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
基於 Pythgo的 Django 框架,程式設計實現一個 WEB 程式,為使用者提供 城市資訊查詢功能。使用者可輸入一個城市名,輸出其所在省份名稱和郵編 等資訊。例如,輸入“桂林市”,輸出“廣西壯族自治區”和“541000”等 城市相關資訊。
本教學的django為4.0.3,python版本為3.10.4,推薦使用,如果不是這些版本的,django,python會出現錯誤!
在桌面上新建立一個django資料夾,在vscode的終端開啟此資料夾,在終端中建立工程專案,如:
django-admin startproject GongCheng
可以看到左側資源管理器左側出現了GongCheng
並在終端執行manager.py檔案:
DesktopdjangoGongCheng> python manage.py runserver
為專案新增兩個App,一個作為主頁,一個作為省份查詢:
PS C:Users使用者DesktopdjangoGongCheng> python manage.py startapp homeApp PS C:Users使用者DesktopdjangoGongCheng> python manage.py startapp aboutApp
新增完成後面,對應左邊資源管理器:
在專案目錄下,建立static檔案,在此不便多述,上檔案連結連結:點選這裡下載
在專案路由下的settings.pu檔案中的INSTALLED_APPS[ ]輸入兩個app的名稱:
渲染介面
完成上面的設定後面,開啟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:
並且在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,再在aboutAppurls.py裡面新增
from django.urls import path from . import views app_name = 'aboutApp' urlpatterns = [ path('about/',views.about,name='about'), ]
使app_name擁有名稱。
開啟aboutAppviews.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 執行程式,開啟出來的連結
主頁效果:
aboutApp頁面效果:
最後,在根目錄的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
新增好檔案後,在專案路由下的settings.pu檔案中的INSTALLED_APPS[ ]新增DjangoUeditor
在專案根目錄找到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
回車會看到模型已經建立
繼續在終端輸入;python manage.py migrate
回車:
模型就在後端了。 接下來我們註冊超級管理員使用者,就可以在後臺管理系統看到模型了。
因為django自己會建立後臺管理系統,所以我們只需要在註冊建立管理員使用者賬號:
python manage.py createsuperuser
回車後出現了頁面,按照以下輸入即可:Username(管理員的賬號,自己隨意取)
通過 http://127.0.0.1:8000/admin/ 進入頁面,如果打不開,請在終端輸入python manage.py runserver 執行程式
我們通過賬號密碼進入後臺管理系統後,我們是看不到模型的,我們需要在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城市資訊查詢內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45