下载安装

  1. 命令行

    pip3 install django==1.11.23 -i https://pypi.tuna.tsinghua.edu.cn/simple 
  2. pycharm

    file -- > settings --> Project Interpreter --> + --> 选择响应的版本下载  

创建项目

  1. 命令行

    先建立好本地文件夹,然后再本文件夹下执行 django-admin startproject  项目名称

  2. pycharm

    flie ---> new_project ---> django --->项目路径 --->选解释器

目录说明

 mysite/
├── manage.py # 管理文件,整个Django项目的启动文件
└── mysite # 项目目录
├── __init__.py
├── settings.py # 配置
├── urls.py # 路由 --> URL和函数的对应关系
└── wsgi.py # runserver命令就使用wsgiref模块做简单的web server

启动项目

  1. 命令行

    【注意**】切换到项目根目录  
    
    python manage.py runserver # 127.0.0.1:8000  默认
    python manage.py runserver 80 # 127.0.0.1:80 修改端口
    python manage.py runserver 0.0.0.0:80 # 0.0.0.0:80 修改IP和端口允许所有主机通过80端口进行访问
  2. pycharm

    点绿三角启动带有dj标记的项目,不是简单的右键运行文件

三件套

导入
from django.shortcuts import HttpResponse, render, redirect

HttpResponse

内部传入一个字符串参数,返回给浏览器。

 def index(request):
# 业务逻辑代码
return HttpResponse("OK")

render

除request参数外还接受一个待渲染的模板文件和一个保存具体数据的字典参数。

将数据填充进模板文件,最后把结果返回给浏览器。

 def index(request):
# 业务逻辑代码
return render(request, "index.html", {"name": "alex", "hobby": ["烫头", "泡吧"]})

redirect

接受一个URL参数,表示跳转到指定的URL。

 def index(request):
# 业务逻辑代码
return redirect("/home/")

简单使用

urls.py写url 和函数的对应关系 写函数

 from django.shortcuts import HttpResponse, render

def index(request):
return HttpResponse('这里是index') # 返回字符串

def home(request):
return render(request, 'home.html') # 返回html页面

urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^index/', index), # 路径和函数的对应关系
url(r'^home/', home),
]

静态文件配置

在项目根目录存放静态文件夹,静态文件夹下可以存放css、js、img等项目中公用的静态文件或是文件夹。如果不想用 STATICFILES_DIRS 可以不用,都放在 app 里的 static 中也可以。

 在settings.py中设置

STATIC_URL = '/static/' # 别名,引入静态文件时以static开头,这里的static不是代表的目录

STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]

【举例】
STATICFILES_DIRS = [ #按照列表的顺序进行查找
os.path.join(BASE_DIR, 'x1'),
os.path.join(BASE_DIR, 'static'),
os.path.join(BASE_DIR, 'x2')
]

MIDDLEWARE中间件

如果是提交post请求,注释掉settings.py下的MIDDLEWARE属性的csrf中间件 'django.middleware.csrf.CsrfViewMiddleware',用改解决请求时出现403 错误

MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
# 'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

TEMPLATES模板路径设置

settings.pyTEMPLATES属性中,设置公用temples路径,是指到 BASE_DIR/templates文件夹中去取模板

 TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')] #是指到 BASE_DIR/templates文件夹中去取模板
,
]

后边接触到app后,还可以在app中建立templates,是app专用的。

登录表单设置

form表单

  1. action 提交的地址,默认是往本地址提交数据 ;method 请求方法,默认是get,如果是实现认证功能的话,需要手动改成post

  2. input 需要有name ,用于提交数据时数据以可知的键值对方式传输,便于进行数据处理;required=""表示是必填项

  3. submit 提交的按钮或者input

  4. 前端校验,在form标签中使用 novalidate

  5. django 中可以在函数中使用request.method从看看浏览器提交的请求方式;使用request.POST可以获取form提交的数据,获取的是一个字典

  6. 重定向:从 django.shortcuts中导入redirect ,让请求的页面跳转到其他指定的页面。 redirect("https://cn.bing.com") 跳转到指定的网页; redirect("/home/") 跳转到本地的页面,前边的/必须要写,不然会加到前边的地址上;

前端模板

APP

将urls.py中定义的功能分类存放

新建APP

命令行:

python manage.py startapp app名称

pycharm中:

tools --> run manage.py task --> startapp app名

注册APP

在settings中进行注册

 INSTALLED_APPS = [
'app01', # 方法一
'app01.apps.App01Config', # 推荐写法
]

在urls.py中导入

从app中把函数或者功能导入到urls.py中

from app01 import views

目录

migrations文件夹存放迁移文件用

admin.py django admin

apps.py app的信息

models.py 模型 model 跟数据库有关

views.py 写函数和功能

Django的下载与使用基础的更多相关文章

  1. Django学习系列之Form基础

     Django学习系列之Form基础 2015-05-15 07:14:57 标签:form django 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追 ...

  2. Django的下载与项目的创建

    一.Django的下载安装 Django官网下载页面 二.DOS窗口下的django项目从创建和启动 1. DOS窗口下载Django pip3 install django==1.11.9 2.DO ...

  3. django 中下载文件与下载保存为excel

    一.django 中下载文件 在实际的项目中很多时候需要用到下载功能,如导excel.pdf或者文件下载,当然你可以使用web服务自己搭建可以用于下载的资源服务器,如nginx,这里我们主要介绍dja ...

  4. Django的下载与创建。

    一.下载 (1)下载命令. 在cmd中输入下载命令: pip3 install django==1.11.11 1.11.11是该版本号. (2)pycharm中下载 直接在pycharm中下载set ...

  5. django的下载安装,目录结构的介绍,简单的django应用

    1.django的下载安装 pip3 install django==1.11.9 2.django的创建 1.在windows的cmd窗口下 1.1创建django项目 django-admin s ...

  6. [Django]模型学习记录篇--基础

    模型学习记录篇,仅仅自己学习时做的记录!!! 实现模型变更的三个步骤: 修改你的模型(在models.py文件中). 运行python manage.py makemigrations ,为这些修改创 ...

  7. Django 之 下载文件

    法I: views.py #encoding:utf-8 import os from django.core.servers.basehttp import FileWrapper from dja ...

  8. 第一步 django的下载安装

    django是python众多web框架中比较有名的一个,以大包大揽功能俱全而著名.但作为重量级的web框架,难免性能上回有所损失,不过由于其封装了各种API,在开发的时候会便利许多.所以也是深受欢迎 ...

  9. ubuntu下Django的下载与安装(三种方法)

    方法一: 1下载: 1 安装python,Linux系统下,一般是安装好的,可以输入如下命令查看 python -V 如果没有安装,则需要安装,安装方法如下,首先从官网下载源码,然后: (1) $ t ...

随机推荐

  1. Chrome报错提示Unchecked runtime.lastError: The message port closed before a response was received.

    经过查询,此错误是Chrome扩展插件引起的.由于Chrome修改了API接口,原来的请求被拦截.(Chrome 73 onwards disallows cross-origin requests ...

  2. spring + junit 测试

    spring + junit 测试 需要一个工具类 package com.meizu.fastdfsweb; import org.junit.runner.RunWith; import org. ...

  3. 题解 [SCOI2007]修车

    题面 解析 这题要拆点.. 首先,证明一个式子: 设修理员M修了N辆车, 且修每辆车的时间为W1,W2....WN. 那么,这个修理员一共花的时间就为:W1*N+W2*(N-1)+...+WN*1. ...

  4. java-并发编程之fork/join框架

    Fork/Join框架是Java 7提供的一个用于并行执行任务的框架,是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架.Fork/Join框架要完成两件事情: 1.任务分 ...

  5. JVM(四),什么是反射

    四.什么是反射 1.反射理论 2.反射实践 (1)创建Robot类 public class Robot { private String name; public void sayHi(String ...

  6. hdu 5733 tetrahedron 四面体内切球球心公式

    tetrahedron Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total ...

  7. CDQ分治学习思考

    先挂上个大佬讲解,sunyutian1998学长给我推荐的mlystdcall大佬的[教程]简易CDQ分治教程&学习笔记 还有个B站小姐姐讲解的概念https://www.bilibili.c ...

  8. Java当中的IO流-时间api(下)-上

    Java当中的IO流(下)-上 日期和时间 日期类:java.util.Date 系统时间: long time = System.currentTimeMillis(); public class ...

  9. Centos7 内核升级及删除无用内核

    导入key rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 安装elrepo的yum源 rpm -Uvh http://www.e ...

  10. Scrapy 设置随机 User-Agent

    方式一:在每个 Spider中设置(针对单个Spider) class TencentSpider(scrapy.Spider): name = 'tencent' allowed_domains = ...