(2022.01.03 Sun)
创建第一个Django项目
注:django版本=4.0
在terminal输入django-admin
可查看管理工具
$ django-admin
Type 'django-admin help <subcommand>' for help on a specific subcommand.
Available subcommands:
[django]
check
compilemessages
createcachetable
dbshell
diffsettings
dumpdata
flush
inspectdb
loaddata
makemessages
makemigrations
migrate
runserver
sendtestemail
shell
showmigrations
sqlflush
sqlmigrate
sqlsequencereset
squashmigrations
startapp
startproject
test
testserver
创建一个项目的指令,项目名比如djangoDebut
$ django-admin startproject djangoDebut
此时会生成一个文件夹djangoDebut
,进入该文件夹并查看文件夹结构
$ cd djangoDebut
$ tree
# in Mac OS, if no tree command, try this
$ find . -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'
返回如下结果
.
|____djangoDebut
| |____asgi.py
| |______init__.py
| |____settings.py
| |____urls.py
| |____wsgi.py
|____manage.py
文件说明
- djangoDebut: 项目文件夹,或容器
- manage.py: 命令行工具,以各种方式与该 Django 项目进行交互。
- djangoDebut/init.py: 空文件,指示Python该目录是一个Python包。
- djangoDebut/asgi.py: ASGI兼容Web服务器的入口,以运行项目。
- djangoDebut/settings.py: 该项目的设置。
- djangoDebut/urls.py: 项目的 URL 声明,一份由 Django 驱动的网站"目录"。
- djangoDebut/wsgi.py: WSGI 兼容的 Web 服务器的入口,以运行项目。
在当前目录,i.e., djangoDebut
,执行如下语句,启动这个项目
$ python3 manage.py runserver 0.0.0.0:8000
其中的0.0.0.0
让其他服务器也能连接本地服务器,8000
端口如果不指定,则默认是8000
。
接下来在本地浏览器,输入localhost:8000
,会看到djangoDebut项目的首页面。
在djangoDebut/djangoDebut/
目录下创建一个新文件views.py,写入如下代码
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hi! ")
在同路径下的urls.py
文件中,填下如下代码,用以绑定URL和视图函数。注:不同的django版本略有差别,这里使用4.0版本
rom django.urls import path
from . import views
urlpatterns = [
path('admin/', admin.site.urls),
path('hello/', views.hello), #
path('face/', views.face),
]
打开本地浏览器,输入localhost:8000/hello
,返回的就是views.py
文件中指定的返回内容Hi!
。
urls.py
文件中的path
函数,其语法格式如下
path(route, view, kwargs=None, name=None)
route
: 字符串,URL规则,遇到与之匹配的URL会触发view
参数
view
: 用于执行与表达式相匹配的URL请求
kwargs
: 可选参数,view
使用的字典类型参数
name
: 可选参数,反向获取URL
Reference
1 runoob点com
网友评论