Django是基于Python开发的免费的开源网站框架,也是python web开发中重量级的web框架,可以用于快速搭建高性能并且优雅的网站!

  下面以Fedora为例安装Django,最新Fedora 23集成了python 3.4.3,所以可以直接安装django,同时建议不要使用自己编译安装的python来安装django,这样可能会出问题,因为很多东西要依赖于系统本身,自己编译安装的python只用来开发本地应用,而不是web开发;另外在Fedora中,输入python会提示命令找不到,而输入python3会进入python交互式界面,那是因为/usr/bin/下只有python3软链接,链接到python3.4,而并没有python这个链接,所以为了后来方便,我们可以建立一个软链接python,不用每次都再输python3了,命令如下:

ln -s /usr/bin/python3 /usr/bin/python

  这样就建立了一个软链接,以后随时输入python即可了,好的,下面正式的开始安装Django

  安装django之前,首先要安装pip,pip是一种类似yum这样的软件安装工具,用它可以很方便的安装软件,并且自动解决版本升级问题,实际上pip是专门安装和管理python包的工具,是easy_install的替代品,所以要先安装pip,pip的在python官网的链接是:https://pypi.python.org/pypi/pip/

  进去上述网站之后,点击Installation就可以进入安装说明界面了,网址是:https://pip.pypa.io/en/latest/installing/

  

  紧接着我们就看到,pip的安装方法之一就是使用get-pip.py脚本来安装,我们可以复制get-pip.py的链接,也可以先下载到本地计算机上然后上传至服务器,可以看到get-pip.py的链接是:https://bootstrap.pypa.io/get-pip.py

  执行下面命令下载该文件:

wget https://bootstrap.pypa.io/get-pip.py

  下载完之后,根据官网说明,要使用本地的python运行该脚本:

python get-pip.py

  稍等一下pip就安装成功了,可以通过执行的pip命令查看对应的参数,下面使用pip来安装django,django官网有详细的教程:https://www.djangoproject.com/,根据说明知道,安装django的命令是:pip install Django,这样运行默认安装的是最新版,目前是1.9.2,因为python版本的原因,所以会出现错误,安装失败,根据测试在python3.4基础上安装Django 1.8.9正式版是没有问题的,所以要执行下面命令:

pip install Django==1.8.

  回车后稍等一会,需要下载相应的文件,等执行完毕,Django 1.8.9就安装成功了,如果是CentOS 6.6或者更低版本,系统上带的python版本是2.6.6,那么经过测试安装Django 1.5.8是没有任何问题的所以用pip应该是:pip install Django==1.5.8

  等安装完成之后,执行python进入交互式界面,输入import django,然后再输入django.VERSION回车后可以看到刚刚安装的Django的版本号,或者直接执行下面命令:

python -c "import django; print(django.get_version())"

  这同时也说明django安装成功了

  接下来可以开始创建web应用了,在我们的根目录下随便创建一个目录,用来专门放置Django项目,在该目录下执行下面命令:

django-admin.py startproject HelloDjango

  这就是创建django项目的命令,使用pip安装django后,在/usr/bin/下会生成django-admin.py新版本中也会生成django-admin可执行文件,所以也可以执行:django-admin startproject HelloDjango创建项目,创建后我们进入项目目录:

cd HelloDjango/

  进入目录之后,可以通过tree命令查看目录结构,如果提示没有tree命令的话,可以使用yum -y install tree命令来安装

  

  我们可以看到初始目录的文件了,项目目录下manage.py是一个实用的命令行工具,可以通过它管理django服务器等,容器下还有一个和容器同名的HelloDjango目录,__init__.py是项目初始化文件,告诉python该目录是一个python包,settings.py是用来进行项目配置的文件,urls.py是项目中所有的url声明,可以认为是django驱动整个项目的url目录,可以定义多种优雅的路由请求,wsgi.py是一个WSGI兼容的Web服务器入口,方便运行web项目。现在这就是一个初始的项目,我们接下来启动这个项目:

python manage.py runserver 192.168.1.41:

  因为要从局域网访问所以后面我们自己定义的是服务器本身的ip和端口号,启动之后命令行进入等待,访问之前不要忘了关闭防火墙,对于centos可以使用如下命令关闭:

/etc/init.d/iptables stop

  对于我现在使用的Fedora,关闭命令是:

/bin/systemctl stop firewalld.service

  关闭防火墙之后,我们通过浏览器访问http://192.168.1.41/即可以打开页面,

  看到这个页面说明django运行一切正常了,浏览器每发出请求,服务器都会更新消息:

  

  通过Ctrl+C快捷键可以终止服务器,接下来我们新建一个简单的测试应用,可以在HelloDjango下直接建立视图文件,但是为了应用结构的清晰不建议这样做,正确方法是在容器根目录下,使用如下命令可以建立一个应用,一个项目可以包括多个应用:

python manage.py startapp app1

  这样在容器下就会出现一个app1的目录,结构如下:

  

  每个源文件的含义也不难理解,下面使用vim打开views.py,如果没有vim可以使用yum install vim进行安装

  打开后views.py是空的,有用的只有头部一行代码,是用于后来模板渲染的

  

  现在我们直接补充如下代码,打印一行简单的输出:

from django.http import HttpResponse

def index(request):
return HttpResponse("Hello Django!")

  头部包含了请求库,每个方法都必须有request参数,这是用来接收请求的,HttpResponse方法的作用就是响应请求,然后保存视图文件,进入项目下的HelloDjango目录,编辑settings.py配置文件,找到INSTALLED_APPS配置项,追加一项app1,将应用app1添加到项目容器

  

  保存之后,编辑urls.py文件,头部追加一行from app1 import views as app1_views,这个app_views是我们自己定义的导入的视图名,然后给urlpatterns这个列表添加一项:url(r'^$', app1_views.index),  注意后面要有一个逗号,前面是定义请求url的正则表达式,后面是响应输出的视图方法,这里正则表达式匹配为空,就是代表的根目录,如下图,带有# new注释的是新增的代码:

  

  现在保存,回到容器下再次运行:python manage.py runserver 192.168.1.41:80启动开发服务器,用浏览器访问即可

  

  下面可以在之前的视图中再定义一个方法,

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

  使用render方法之前要使用from django.shortcuts import render导入对应库,因为前面默认导入了所以不用再次导入了,render方法的作用就是调用对应的视图模板也就是home.html,那么home.html放到什么地方呢,在app1目录下执行下面命令:

$ mkdir templates
$ cd templates/
$ vim home.html

  在django加载app1应用时,会自动读取templates模板目录从而渲染里面的数据,home.html就是一个网页模板,为了简单,没有添加动态的数据:

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>home视图</title>
</head>
<body>
<h3>Hello Django!</h3>
</body>
</html>

  同样添加urls.py的配置项,设置访问url,代码就是下图列表中的第三项:

  

  保存后,同样启动服务器,访问http://192.168.1.41/home就可以看到对应的响应

  

  以上就是Django基本的安装和最简单的例子,Django还有很多强大的功能,特别在国外,很多网站都是基于Django构建的,Django的特点就是功能强大并且使用简单,适合快速开发

Linux下安装Django的更多相关文章

  1. windows及linux下安装django simple captcha 遇到的各种问题及解决的方法

    转载自http://www.cnblogs.com/descusr/p/3225874.html 全部程序写完之后,验证码图片不显示,点击图片地址会提演示样例如以下错误,而且在linux下的纠正办法 ...

  2. Linux下安装Apache并以mod_wsgi方式部署django站点

    源码编译方式安装Apache 首先下载Apache源码压缩包,地址为http://mirror.bit.edu.cn/apache/httpd/ 继续下载apr和apr-util压缩包,地址为http ...

  3. Linux下安装配置virtualenv与virtualenvwrapper

    一.Linux下安装.配置virtualenv 配置源 #指定清华源下载pip的包 [root@localhost opt]# pip3 install -i https://pypi.tuna.ts ...

  4. Linux 下部署Django项目

    Linux 下部署Django项目   说明:本文所使用的环境为CentOS 6+Python2.7+Django1.11 安装Django.Nginx和uWSGI 1.确定已经安装了2.7版本的Py ...

  5. Windows下安装Django【转】

      Windows下安装Django及WEB服务启动 如果使用的是 Linux 或 Mac OS X ,系统可能已经预装了 Python .在命令提示符下 (或 OS X 的终端中) 输入python ...

  6. Linux(4)- centos7安装python3、Linux下安装、配置virtualenv、确保开发环境的一致性、虚拟环境之virtualenvwrapper、vim

    一.centos7安装python3 1.下载python3的源码包 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz cd ...

  7. Linux下安装 Posgresql 并设置基本参数

    在Linux下安装Postgresql有二进制格式安装和源码安装两种安装方式,这里用的是二进制格式安装.各个版本的Linux都内置了Postgresql,所以可直接通过命令行安装便可.本文用的是Cen ...

  8. Linux下安装Tomcat服务器和部署Web应用

    一.上传Tomcat服务器

  9. Linux下安装使用Solr

    Linux下安装使用Solr 1.首先下载Solr.mmseg4j分词包.tomcat并解压,这用google.百度都可以搜索得到下载地址. 2.因为要使用到中文分词,所以要设置编码,进入tomcat ...

随机推荐

  1. JS从剪切板里粘贴图片

    功能需求:在网页中,Ctrl+V,把系统剪切板的图片(比如QQ截图)进行粘贴.显示.上传...,提高用户体验. 参考链接:https://ruby-china.org/topics/17266 git ...

  2. javascript 之Object内置对象

    Object.defineProperty(obj, prop, descriptor)

  3. C# 绘制统计图(柱状图, 折线图, 扇形图)【转载】

    统计图形种类繁多, 有柱状图, 折线图, 扇形图等等, 而统计图形的绘制方法也有很多, 有Flash制作的统计图形, 有水晶报表生成统计图形, 有专门制图软件制作, 也有编程语言自己制作的:这里我们用 ...

  4. 【转】GATK使用方法详解(包含bwa使用)

    一.使用GATK前须知事项: (1)对GATK的测试主要使用的是人类全基因组和外显子组的测序数据,而且全部是基于illumina数据格式,目前还没有提供其他格式文件(如Ion Torrent)或者实验 ...

  5. block 块函数

    定义模块函数: <?php function smarty_block_text($args,$content,$smarty,$a) { $color=$args["color&qu ...

  6. 怎样更改wordpress登陆 URL防止恶意注册

    WP 默认的登陆 URL 是 wp-login.php或wp-admin.php,许多spamer会根据这些footprint来收集可注册的wordpress站点,然后你的站内就多出许多垃圾评论.如果 ...

  7. webrtc第一篇

    1.介绍 众所周知,浏览器本身不支持相互之间直接建立信道进行通信,都是通过服务器进行中转.比如现在有两个客户端,甲和乙,他们俩想要通信,首先需要甲和服务器.乙和服务器之间建立信道.甲给乙发送消息时,甲 ...

  8. php访问全局变量

    函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问. 函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问. PHP 同时在名为 $GLOBALS[index] 的数组 ...

  9. tomcat 虚拟节点

    <Context path=”Welcome” docBase=”c:\hello\hello” reloadable=”true” /> contex指上下文,实际上就是一个web项目: ...

  10. Effective Java 读书笔记之一 创建和销毁对象

    一.考虑用静态工厂方法代替构造器 这里的静态工厂方法是指类中使用public static 修饰的方法,和设计模式的工厂方法模式没有任何关系.相对于使用共有的构造器来创建对象,静态工厂方法有几大优势: ...