python如何使用django_python中Django的基本使用

1.Django安装

我本地的python版本是2.7.17,所以我下的版本是Django版本1.11,cmd执行如下命令:

pip install Django==1.11

检验是否安装成功:(python命令行执行如下)

>>> importdjango>>>django.get_version()'1.11'

2.Django创建第一个项目

安装 Django 之后,您现在应该已经有了可用的管理工具 django-admin。我们可以使用 django-admin 来创建一个项目:

我们可以来看下django-admin 的命令介绍:

C:\Users\Administrator>django-admin

Type'django-admin help ' forhelp 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

Note that only Django core commands are listed as settings are not properly configured (error: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.).

1.创建项目

django-admin startproject HelloWorld

创建完成后我们可以查看下项目的目录结构:

$ cd HelloWorld/$ tree

.|--HelloWorld| |--__init__.py| |--settings.py| |--urls.py| `--wsgi.py

`-- manage.py

目录说明:

HelloWorld: 项目的容器。

manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。

HelloWorld/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。

HelloWorld/settings.py: 该 Django 项目的设置/配置。

HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。

HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。

接下来我们进入 HelloWorld 目录输入以下命令,启动服务器:

python manage.py runserver 0.0.0.0:8000

浏览器访问测试:

1196212-20200401141236800-1669886849.png

2.试图和URL配置

在先前创建的 HelloWorld 目录下的 HelloWorld 目录新建一个 view.py 文件,并输入代码:

from django.http importHttpResponsedefhello(request):return HttpResponse("Hello world !")

接着,绑定 URL 与视图函数。打开 urls.py 文件,删除原来代码,将以下代码复制粘贴到 urls.py 文件中:

from django.conf.urls importurlfrom . importview

urlpatterns=[

url(r'^$', view.hello),

]

整个目录结构如下:

$ tree

.|--HelloWorld| |-- __init__.py| |-- __init__.pyc| |--settings.py| |--settings.pyc| |-- urls.py #url 配置

| |--urls.pyc| |-- view.py #添加的视图文件

| |-- view.pyc #编译后的视图文件

| |--wsgi.py| `--wsgi.pyc

`-- manage.py

完成后,启动 Django 开发服务器,并在浏览器访问打开浏览器并访问:

1196212-20200401141706590-14944477.png

注意:项目中如果代码有改动,服务器会自动监测代码的改动并自动重新载入,所以如果你已经启动了服务器则不需手动重启。

3.django模板

django.http.HttpResponse() 来输出 "Hello World!"。该方式将数据与视图混合在一起,不符合 Django 的 MVC 思想。模板是一个文本,用于分离文档的表现形式和内容。

HelloWorld 目录底下创建 templates 目录并建立 hello.html文件,整个目录结构如下:

HelloWorld/

|--HelloWorld| |-- __init__.py| |-- __init__.pyc| |--settings.py| |--settings.pyc| |--urls.py| |--urls.pyc| |--view.py| |--view.pyc| |--wsgi.py| `--wsgi.pyc|--manage.py

`--templates

`-- hello.html

hello.html 文件代码如下:

{{ hello }}

从模板中我们知道变量使用了双括号。

接下来我们需要向Django说明模板文件的路径,修改HelloWorld/settings.py,修改 TEMPLATES 中的 DIRS 为 [BASE_DIR+"/templates",],如下所示:

...TEMPLATES =[

{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [BASE_DIR+"/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',

],

},

},

]

...

我们现在修改 view.py,增加一个新的对象,用于向模板提交数据:

from django.shortcuts importrenderdefhello(request):

context={}

context['hello'] = 'Hello World!'

return render(request, 'hello.html', context)

可以看到,我们这里使用 render 来替代之前使用的 HttpResponse。render 还使用了一个字典 context 作为参数。

context 字典中元素的键值 "hello" 对应了模板中的变量 "{{ hello }}"。

再访问访问 http://127.0.0.1:8000/hello,可以看到页面:

1196212-20200401142938272-1581622230.png

这样我们就完成了使用模板来输出数据,从而实现数据与视图分离。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值