【操作环境】
Windows10+vscode+python3.8+django
已经创建好了项目文件且能够通过127.0.0.1:8000正常访问
1、添加一个dams的应用
一个django项目可以包含一个或多个应用,如果仅仅只是修改代码的话不需要每次runserver启动服务,除非新增了文件或者其他资源;最后可以根据需求进行各种各样的开发了
PS D:codeyinchuan> python manage.py startapp dams
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'dams',]
2、在创建的dams文件上右击,选择new folder创建一个templates【千万不能写错,不然会导致后续django项目无法找到网页文件】文件夹用来存放网站页面。
我的第一页页面
欢迎来到我的个人世界
3、编写视图处理函数
#在没有创建index.html页面时代码写法:#from django.shortcuts import render#from django.http import HttpResponse#def index(requst): #return HttpResponse("Hello,django.")#在创建index.html页面后代码写法:from django.shortcuts import render#创建视图函数def home(request): return render(request,'index.html')
4、配置访问应用app的路由url(如果创建了index.html页面就跳过这一步)首先在应用下新建一个ulrs.py文件作为该应用的站点地址管理(如何django已经创建直接编辑即可)
from django.urls import pathfrom . import viewsurlpatterns=[path('',views.index,name='index')]
5、配置访问路由url
【温馨提醒】django项目目录下的文件说明:
manage.py: 一个让你可以管理Django项目的工具程序。
__init__.py:一个空文件,告诉Python解释器这个目录应该被视为一个Python的包。
settings.py:Django项目的配置文件。各种应用、资源路径、模板等配置均在此文件中设置。
urls.py:Django项目的URL声明(URL映射),就是网站的“目录”。网络访问的页面映射文件。创建在web项目下所有的页面路由都需要在该文件中配置,否则在访问的时候找不到对应的页面
wsgi.py:项目运行在WSGI兼容Web服务器上的接口文件,一般不需要做任何修改。
#在没有创建index.html页面时代码写法:#from django.contrib import admin#from django.urls import path, include#urlpatterns = [# path('admin/', admin.site.urls),# path('dams/', include('dams.urls')),#]#创建index.html页面时代码写法:from django.contrib import adminfrom django.urls import pathfrom dams.views import homeurlpatterns = [ path('admin/',admin.site.urls), path('',home,name='home'),]
6、web启动 关闭和局域网手机访问
启动项目前请先修改项目目录下settings.py文件中的
ALLOWED_HOSTS = [] 为:ALLOWED_HOSTS = ['*',]
即可实现局域网内其它设备的访问 如:手机
PS D:codeyinchuan> python manage.py runserver 0.0.0.0:8000Watching for file changes with StatReloaderPerforming system checks...System check identified no issues (0 silenced). ions for app(s): admin, auth, contenttypes, sessions.You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.Run 'python manage.py migrate' to apply them.November 12, 2020 - 10:27:47Django version 3.1.3, using settings 'yinchuan.settings'Starting development server at http://0.0.0.0:8000/Quit the server with CTRL-BREAK.
在cmd命令工具输入命令“ipconfig”按enter查询本机当前局域网ip地址,
假设为:192.168.42.103。
打开浏览器输入http://192.168.42.103:8000/即可访问当前创建的应用。
【操作备注】
如果有在templates下有多个html文件,对应的进行views和urls相关添加即可
【更多html页面请参照下述操作反复操作即可】
我的第二页页面
welcome to my home!
对应的dams目录下的views.py内容增加如下:
#在没有创建index.html页面时代码写法:#from django.shortcuts import render#from django.http import HttpResponse#def index(requst): #return HttpResponse("Hello,django.")#在创建index.html页面后代码写法:from django.shortcuts import render#创建视图函数def home(request): return render(request,'index.html')def myhome(request): return render(request,'test.html')
对应的yinchuan目录下的urls.py内容增加如下:
#在没有创建index.html页面时代码写法:#from django.contrib import admin#from django.urls import path, include#urlpatterns = [# path('admin/', admin.site.urls),# path('dams/', include('dams.urls')),#]#创建index.html页面时代码写法:from django.contrib import adminfrom django.urls import pathfrom dams.views import homefrom dams.views import myhomeurlpatterns = [ path('admin/',admin.site.urls), path('',home,name='home'), path('test',myhome,name='myhome'),]
打开浏览器输入http://127.0.0.1:8000/test,即可访问test.html页面内容啦