在Django项目中可以包含多个APP,相当于一个大型项目中的分系统、子模块、功能部件等,相互之间比较独立,但也有联系,所有APP共享项目资源.
输入:python manage.py startapp myapp
,生成myapp文件夹
创建后运行项目python manage.py runserver
,默认127.0.0.1:8000 默认页面为http://127.0.0.1:8000/.
还可以运行pycharm的按钮进行开启与关闭
myapp/views.py文件代码:
from django.http import HttpResponse #需要导入HttpResponse模块
def hello(request): #request参数必须有,名字类似self的默认规则,可以修改,它封装了用户请求的所有内容
return HttpResponse("Hello world ! ") #不能直接字符串,必须是由这个类封装,此为Django规则
testDjango/urls.py文件代码:
from myapp import views
urlpatterns = [
path('admin/', admin.site.urls),
path('hello/',views.hello),
] #你定义的路由,第一个参数为引号中的表达式,第二个参数业务逻辑函数(当前为views中的hello函数)
]
修改views文件:
def hello(request):
# return HttpResponse("Hello world ! ")
context = {}
context['hello'] = 'Hello World!' #数据绑定
return render(request, 'hello.html', context)#将绑定的数据传入前台
被继承的模板:
{#base.html#}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>模板测试</title>
</head>
<body>
<h1>{{ hello }}</h1>
<p>Django模板测试</p>
{% block mainbody %}
<p>original</p>
{% endblock %}
</body>
</html>
hello.html 中继承 base.html,并替换特定 block,hello.html 修改后的代码如下:
{#hello.html#}
{% extends "base.html" %}
{% block mainbody %}<p>继承了 base.html 文件</p>
{% endblock %}
重新访问地址 http://127.0.0.1:8000/hello,输出结果如下:
原文:https://www.cnblogs.com/kolane/p/11537912.html