初识Django
2019-12-24 本文已影响0人
小尤root
django基本命令行使用 python manage.py
check
compilemessages
createcachetable
dbshell
diffsettings
dumpdata
flush
inspectdb
loaddata
makemessages
makemigrations #看名称是表达创建一个迁移文件
migrate #执行迁移动作
sendtestemail
shell
showmigrations
sqlflush
sqlmigrate
sqlsequencereset
squashmigrations
startapp
startproject
test
testserver
python manage.py createsuperuser创建超级管理员,在执行这个命令之前需要先初始化数据库,也就是创建相关表,否则会报错,当然报错也很好理解,毕竟没有数据库,Django也不知道怎么去存储(持久化)用户名密码
可执行步骤:
python manage.py makemessages
python manage.py migrate
python manage.py createsuperuser
django url初步认识
url的映射及转发,比较容易理解,直接看注释着这写即可。
url中的内部转换器
转换器是用来规定占位符类型的,我是这样理解的,好像官方不叫这个为占位符,如下。
urlpatterns = [
path('admin/', admin.site.urls),
path('index/<int:page>',views.index) #这里包含了一个int类型的占位符page,必须浏览器中必须传入整型的的数字
]
#views.py文件中
def index(request,page): #这里的名称必须和url文件中的占位符名称相同
print(page)
context = {}
context['hello'] = "你好"
return render(request,'index.html',context=context)
上述的int类型是怎么限制的呢
导入from django.urls import converters
再进入converters中查看一下,这里默认可选择五种
image.png
由下列代码可知,path类型是继承str类型,覆盖了正则,表示可匹配 “/”
class PathConverter(StringConverter):
regex = '.+'