超实用的Django入门基础教程,新手必备!

Django简介

  1. Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。
  2. Django是一个开放源代码的Web应用框架,由Python写成。
  3. Django采用了MVC的软件设计模式,即模型M,视图V和控制器C

安装Django

pip install django

虚拟环境的建立和准备工作

一、通过pycharm创建

pycharm创建Djanog项目

可能遇到Non-zero exit code (1)的错误;原因是因为pip不是最新版本,需要执行以下命令:
python -m pip install --upgrade pip 或者使用豆瓣原进行安装。
python -m pip install --upgrade pip -ihttp://pypi.douban.com/simple --trusted-host pypi.douban.com

location输入mysite,点击more settings templates folder是默认模板路径 Application name是创建一个blog的app点击创建之后,pycharm会自动帮我们创建一个虚拟环境和安装最新版的django
创建完成后,会多一个mysite文件夹,打开mysite文件夹
在这里插入图片描述
这就是Django的目录结构

blog文件夹是我们刚才创建的APP,
mysite文件夹,放的是Django的一些配置文件
templates文件夹是存放模板文件的,
venv文件夹就是virtualenv虚拟环境目录,venv文件夹不是django源码里的东西,只是我们创建虚拟环境时指定到这个目录下了而已,
manage.py文件则是对django-admin.py的简单包装的一个文件,通过它能运行一些简单的命令。

在blog文件夹中的目录结构

admin.py 可在该文件中注册模型
app.py 包含了blog这个应用程序主要配置内容(之后在激活app时候用到)
migrations包含了应用程序(app)的数据库迁移。迁移可以使Django跟踪模块变化内容,并相应的同步数据库。
model.py包含了应用程序的数据模型,但是也可以被置空。
test.py 用来测试的
views.py包含逻辑内容

手动创建app

在创建项目的时候 也可以选择不用创建APP,可以通过手动创建 在Terminal里输入python manage.py startapp znj 此时我们项目目录里多出一个znj文件夹

迁移数据库

在Terminal下输入下面的命令,生成和同步数据库。
python manage.py makemigrations
python manage.py migrate

关于更多的一些Django常用的命令,大家可以看看这篇文章:Django常用命令

二、手动创建

除了上面通过pycharm创建Django之外,我们还可以通过手动的方法创建Django。

创建一个新的文件夹

创建一个learning_django文件夹,cd到这个目录

创建虚拟环境

创建一个名字为znj_env的虚拟环境

python -m venv znj_env

激活虚拟环境

(注意,使用的是虚拟环境的话前面会有(venv)这个显示的,不然就是没有激活虚拟环境。)

znj_env\Scripts\activate

deactivate 退出激活的虚拟环境

激活后安装Django

pip install Django

查看安装的Django版本

python -m django --version

创建项目

django-admin.py startproject learning_django .

注意后面的结束的 . 一定要写上,这样才能使项目有合适的目录结构
用dir查看一下目录结构或者自己打开文件夹查看,应该是有ll_env,manage.py和learning_log三个文件
再看看learning_django的内容
dir learning_django
应该是__init__.py,setting.py,urls.py和wsgi.py四个.py文件

目录说明:

learning_django : 项目的容器。
manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
learning_django /init.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
learning_django /settings.py: 该 Django 项目的设置/配置。
learning_django /urls.py: 该Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
learning_django /wsgi.py: 一个 WSGI兼容的 Web 服务器的入口,以便运行你的项目。

创建app

manage.py startapp znj 

此时我们项目目录里多出一个znj文件夹,需要在setting.py中手动激活app

创建数据库

同样在激活的虚拟环境下,用下面的命令,初始状态下的应用程序表将在数据库中被创建。

python manage.py migrate

然后会发现learning_log中多了一个db.sqlite3文件,这个就是数据库了。

检查项目是否成功创建

还是在激活的虚拟环境下输入

python manage.py runserver 0.0.0.0:8080

0.0.0.0 让其它电脑可连接到开发服务器,8080 为端口号。如果不说明,那么端口号默认为 8000。
打开浏览器,输入网址localhost:8000应该可以看到django的欢迎界面
在这里插入图片描述

Django配置

视图和URL配置
在先前创建的 learning_django 目录下的 learning_django 目录新建一个 view.py 文件,并输入代码:

from django.http import HttpResponse

def hello(request):
    return HttpResponse("Hello world ! ")

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

from django.conf.urls import url
 
from . import view
 
urlpatterns = [
    url(r'^$', view.hello),
]

重新启动

我们也可以在urls中修改以下规则:

from django.urls import path
 
from . import view
 
urlpatterns = [
    path('hello/', view.hello),
]

通过浏览器打开 http://127.0.0.1:8000/hello
在这里插入图片描述

path() 函数

Django path() 可以接收四个参数,分别是两个必选参数:route、view 和两个可选参数:kwargs、name。

语法格式:

path(route, view, kwargs=None, name=None)
  • route: 字符串,表示 URL 规则,与之匹配的 URL 会执行对应的第二个参数 view。
  • view: 用于执行与正则表达式匹配的 URL 请求。
  • kwargs: 视图使用的字典类型的参数。
  • name: 用来反向获取 URL。

Django2. 0中可以使用 re_path() 方法来兼容 1.x 版本中的 url() 方法,一些正则表达式的规则也可以通过 re_path() 来实现 。

from django.urls import include, re_path

urlpatterns = [
    re_path(r'^index/$', views.index, name='index'),
    re_path(r'^bio/(?P<username>\w+)/$', views.bio, name='bio'),
    re_path(r'^weblog/', include('blog.urls')),
    ...
]
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值