安装

通过cmd进行安装

pip3 install django==1.11.11

创建django项目

通过命令行进行创建

下面的命令创建了一个名为"mydjango"的Django 项目:

django-admin startproject mydjango

说明:

在哪个目录下创建的,就会在哪里生成这个项目

在pycharm里创建

目录介绍

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

命令行运行

在django项目的根目录下(就是我们起的项目名下),执行下面的命令

python manage.py runserver

如果看到如下信息则启动成功

然后我们用浏览器去打开上面的地址,大家会看到如下的页面

如果我们想在启动的时候自定义端口号,可以在执行命令的时候加上端口号

python manage.py runserver 8080

pycharm中启动

如果想更改端口号,则点击向下的箭头更改

settings下面的配置文件

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, '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',
],
},
},
]

这个里面定义了模版文件的路径,也就是HTML文件的路径,我们引用的HTML文件,都会在这里面去找,pycharm创建的会自动帮我们加上下面的这句代码,如果通过命令创建的项目,则需要手动去加

'DIRS': [os.path.join(BASE_DIR, 'templates')],  # templates文件夹路径

静态文件相关:

STATIC_URL = '/static/'  # HTML中使用的静态文件夹前缀
STATICFILES_DIRS = [
os.path.join(BASE_DIR,'static') # 静态文件存放路径
]

这里面可以放CSS文件,JS文件,image文件等

写一个登录页面

首先要有一个登录的html文件,上面也说了templates是放html文件的,我们把文件放到里面

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta http-equiv="content-Type" charset="UTF-8">
<meta http-equiv="x-ua-compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Title</title>
<link rel="stylesheet" href="/static/bootstrap-3.3.7/css/bootstrap.css">
<link rel="stylesheet" href="/static/font-awesome-4.7.0/css/font-awesome.css">
<style>
body {
background-color: #eeeeee;
} .login-box {
margin-top: 50px;
} </style>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-4 col-md-offset-4 login-box">
<form class="form-horizontal">
<div class="col-sm-9">
<h2 class="text-center">请登录</h2>
</div> <div class="form-group"> <div class="col-sm-9">
<div class="input-group margin-bottom-sm">
<label for="email" class="hidden">邮箱</label>
<span class="input-group-addon"><i class="fa fa-envelope-o fa-fw"></i></span>
<input class="form-control" type="text" id="email" placeholder="您的邮箱地址">
</div>
<span class="help-block"></span>
</div>
</div> <div class="form-group">
<div class="col-sm-9">
<div class="input-group">
<label for="password" class="hidden">密码</label>
<span class="input-group-addon"><i class="fa fa-key fa-fw"></i></span>
<input class="form-control" type="password" id="password" placeholder="请输入密码">
</div>
<span class="help-block"></span>
</div>
</div> <div class="form-group">
<div class="col-sm-9">
<div class="checkbox">
<label>
<input type="checkbox"> 记住我
</label>
</div>
</div>
</div> <div class="form-group">
<div class="col-sm-9">
<button type="button" id="b1" class="btn btn-block btn-primary">登录</button>
</div>
</div>
</form>
</div>
</div>
</div> <script src="/static/jquery-3.3.1.js"></script>
<script>
$("#b1").click(function () {
$("input:not([type='checkbox'])").each(function () {
// 判断值为不为空
if ($(this).val().length === 0) {
// 展示错误提示
var errMsgPrefix = $(this).prev().prev().text();
$(this).parent().next().text(errMsgPrefix + "不能为空");
$(this).parent().parent().parent().addClass("has-error");
}
});
}); // 给输入框绑定获取焦点的事件
$("input:not([type='checkbox'])").focus(function () {
// 清空错误提示
$(this).parent().next().text("");
// 移除父标签的has-error
$(this).parent().parent().removeClass("has-error");
});
</script>
</body>
</html>

上面的文件用到了jQuery和bootstrap,我们创建个static目录,把这些静态文件放到里面,如下

记住,一定要在setting里面更改STATICFILES_DIRS,这样django才会在static目录下去找这些文件,然后我们把login.html里引用到的静态文件导入就行

STATIC_URL = '/static/'  # HTML中使用的静态文件夹前缀

#静态文件的实际存放路径
STATICFILES_DIRS = [
os.path.join(BASE_DIR,'static') # 静态文件存放路径
]

接下来我们去修改url.py文件里的数据

urls.py是url分发器,路由配置文件。在这里面我们会构建起网站的目录,简单来说我们要做的事就是告诉Django,对于某段url该调用哪段代码。

from . import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^login/', views.login),
]
'^login/'路径,就是我们在网站上域名后面的路径,
views.login表示去views找login函数

现在还没有login函数,我们去MyDjango下创建一个views.py的文件,在里面创建一个login的函数,注意,views.py和url.py在同一个层级下,在views.py里写下如下的代码
from django.shortcuts import render

def login(request):
return render(request,'login.html')

代码解释:

首先我们导入了render方法,这个方法可以把html文件通过固定的格式返回给浏览器,所有跟请求相关的数据都保存在request里面,

render(request,'login.html')就是在templates下找到login.html文件,并返回给调用者
然后我们启动服务,去访问login网站,我的路径是http://127.0.0.1:8080/login/,如果你看到如下的页面表示配置成功

我们来看一下,程序它是如何进行这些操作的,并且把数据返回给了我们

1.我们在浏览器上输入http://127.0.0.1:8080/login/之后,django会在url.py下去找login的路径

2.因为我们的url.py下有login,它是在views下面的一个函数,所以django又去views下面找login函数

3.django帮我们调用要执行的函数,会给我们的函数传一个request的参数,这里面跟请求相关的数据都保存在这个request里

4.django在执行到render(request,'login.html')时,会去templates文件夹下找到login.html文件,打开读取内容,按照HTTP响应的格式给浏览器返回读取的内容

5.浏览器收到django返回的响应消息,按照HTML格式去显示这个消息

上面的五步就是我们在浏览器上输入一个地址之后发生的一系列的事情

修改默认时区

安装完Django默认的时区是en-us的

LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'UTC'

我们可以改为国内的,这里改为上海

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/Shanghai'

改完之后重启项目,欢迎页面就显示成中文了

django -- 安装django的更多相关文章

  1. Django 安装 —Django学习 (一)

    Django Django 是一个python 框架, 采用MTV的模式,模型,模板,视图 注意事项 Django 版本和 python 的版本是一一对应的,安装时一定要注意相应的版本信息. 如下图: ...

  2. win10系统安装两个版本的python,该怎么安装Django

    最近遇到一个问题,系统上安装了python2,7 和python3.5两个版本,然后使用命令:pip install Django 安装Django后却发现以下情况: Traceback (most ...

  3. 1 - Django安装

    一.Python安装 在Mac系统下,系统自带python开发环境,打开终端,输入python,我们就可以看到当前python版本号,例如我的系统是OS X EI Caption 10.11.1,自带 ...

  4. ubuntu 16 安装django nginx uWSGI

    参考 https://www.digitalocean.com/community/tutorials/how-to-serve-django-applications-with-uwsgi-and- ...

  5. centos 安装pip,使用pip安装django

    python版本要2.7.x以上版本,若未安装python执行以下命令安装: wget https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz ...

  6. centos 6.5 安装django

     首先做这个:python安装setuptools   http://blog.csdn.net/zhuying_linux/article/details/8167430  CentOS下将2.6升 ...

  7. python,django安装

    环境:win7 64位 软件:python3.4.3,jdango1.8,PyDev,pymysql0.7 一:安装python 1.安装好python好后,配置环境变量,可以参考其它的博客,本博客只 ...

  8. [Django 1]安装Django并创建虚拟虚拟环境项目

    1)安装Django 使用pip来安装,命令如下: pip3 install Djangopip install Django(安装到python2)python3 -m pip install Dj ...

  9. Mac上安装django

    参考:https://docs.djangoproject.com/en/1.9/topics/install/#installing-official-release 升级pip sudo pip ...

随机推荐

  1. 34,Leetcode 组合总和I,II -C++ 回溯法

    I 题目描述 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合.candidates 中的数字可以无 ...

  2. C++:const

    const const是C++提供的一个强大的关键字,const的用法非常多,但总的来说,const的作用只有一个:保证被修饰的内容不会被程序所修改. const基本用法 对一个类型的对象使用cons ...

  3. Intellij Idea 自动更新资源和类

    Run -> Edit Configurations 进入配置页 On update action:当发现更新时的操作   选择Update classes and resources  On ...

  4. 用pyenv管理Python多版本及下载加速方法--Mac上

    原文:https://www.jianshu.com/p/91fc7ecc5e46 先大致介绍下pyenv的安装及配置流程.随后介绍加速下载方法 安装: brew install pyenv 配置 在 ...

  5. 前端学习:学习笔记(CSS部分)

    前端学习:学习笔记(CSS部分) CSS的学习总结(图解) CSS的引入方式和书写规范 CSS的插入方式_内嵌样式 <!DOCTYPE html> <html> <hea ...

  6. dotnet + LinQ 按照指定的字段 和 排序方式排序

    /// <summary> /// 根据指定属性名称对序列进行排序 /// </summary> /// <typeparam name="TSource&qu ...

  7. 《EOPL》 : CPS风格真是神奇

    计算的栈好像可以随便跳转了一样. Exception 的 try/catch , resume机制都可以借此实现 还可以实现 Erlang中的 spawn,线程调度器,以及基本的 Mutex 同步机制

  8. weblogic漏洞

    1 weblogic控制台地址暴露 ²  整改方法: 禁用weblogic控制台.在weblogic域(sguap-domain和base-domain)的config下的config.xml中 &l ...

  9. When does VideoToolbox' VTCompressionSession benefit from hardware acceleration?

    来源:http://stackoverflow.com/questions/19256897/when-does-videotoolbox-vtcompressionsession-benefit-f ...

  10. ML-逻辑回归推导

    认识 是一个经典的二元(y=0 或 y=1) 分类算法, 不是回归 输入特征还是线性回归, 输出是 [0,1] 的一个概率值, 其判别函数的形式为: \(P(y=1|x) = \frac {1}{1+ ...