django框架菜鸟教程,python框架django入门
开发工具:PyCharm社区版或专业版的CMD命令行
社区版和专业版的区别在于,专业版可以直接创建Django项目,而社区版需要手动创建。由于我们才刚刚入门,所以还是手动创建比较好,这样更有利于我们熟悉Django的命令和相关操作。
00-1010
新建 Django 的最小程序
我们将通过命令行界面输入要创建的项目的目录,然后输入以下命令:django-管理开始项目我的网站
Django-admin这里是一个管理Django的工具,在安装django的过程中会默认安装。Mysite是项目的名称,可以根据自己的需要进行修改。创建后,我们将获得以下目录结构:
最小项目目录结构。我们需要在这里添加具体的应用,并通过配置路由映射.来添加相关功能
工程(项目)和应用(app)是什么关系?
项目对应一个网站,网站是配置和应用的集合。应用程序对应于特定功能,是一个具体的功能的载体.配置和功能的分离是一个高度模块化的体现。【修改项目】创建具体应用(app)命令:python manage . py startapp hello app。
执行该命令后,将在根目录中创建一个新的helloapp目录。
Helloapp目录【修改项目】修改应用的视图. py
#在此创建您的视图. from django.http导入HttpResponsedef Hello(request):返回HttpResponse(Hello World!我来了.) 【修改项目】修改URL路由
在项目名称对应的目录下的urls.py文件中指定URL和处理程序之间的路径关系。
从django.contrib导入admin从django.urls导入
clude, path
from helloapp import views # from the subapp import related views
urlpatterns = [ # config the routes like vue's vue-router
path('admin/', admin.site.urls),
path('index/', views.hello),
]
我们首先需要引入对应app下的 views 文件,然后配置路由对应关系
path('index/', views.hello)
这里的 第一个参数 表示url地址,我们这里的就会响应 域名/index/
这个路径的访问; 第二个参数 则表示指定某个处理函数,例如这里我们制定了 views.hello
。
运行工程
python manage.py runserver
运行后我们访问对应的路由,就会得到相应的返回信息;如果访问未配置的则会返回 404 notfound。
不得不说的 django-admin
和 manage.py
django-admin
django-admin <command> [options]
django-admin是一个Django框架全局的管理工具:
建立并管理Django工程 建立并管理Django工程使用的数据库 控制调试或日志信息 运行并维护Django工程
django-admin help
命令来查看更多的功能
manage.py
python manage.py <command> [options]
功能和 django-admin
类似,但是作用范围仅作用于当前项目。
我们也可以通过 python manage.py help
命令来查看更多功能。
最小程序的改进
需求:返回一个HTML页面,而不是一个字符串
思路:建立模板(T),对应特定请求,返回模板页面
新建hello2app,通过index2来访问
新建hello2app应用
`python manage.py startapp hello2app`
使用templateTest.html
为返回页面,修改views.py
```python# hello2app/views.py
from django.shortcuts import render
def hello(request):
return render(request, "PYC01-HTMLJSDemo.html")
```
这里,`render()` 是一个打包函数,第一个参数是 request, 第二个参数是要返回的模板页面。
在hello2app应用中,新增 urls.py
文件(本地路由文件)# hello2app/urls.py
from django.urls import path
from . import views # . 代表当前 app
urlpatterns = [ # urlpatterns 变量名成是固定的
path('', views.hello)
]在全局路由文件中增加对本应用路由文件的引用 # mysite/urls.py
from django.contrib import admin
from django.urls import include, path
# include()函数,用于引入其他路由文件
from helloapp import views
urlpatterns = [
path('index2/', include('hello2app.urls')),
# 将hello2app的局部路由增加到全局路由中
path('index/', views.hello),
path('admin/', admin.site.urls),
]设置模板路径,让Django框架找到模板所在目录 我们由于返回了模板文件,所以我们需要对
mysite/settings.py
进行修改配置一下路径,至此,也就完成了一个最小的Django项目了!TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'hello2app/templates')], # 指定templates所在路径
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。