Python Web框架之Django初探

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python Web框架之Django初探相关的知识,希望对你有一定的参考价值。

Python Web框架之Django初探

  Django是一个开放源代码的Web应用框架,由Python写成。采用了MVC的框架模式,即模型M,视图V和控制器C。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。

  Django可以运行在Apache,Nginx上,也可以运行在支持WSGI,FastCGI的服务器上。支持多种数据库,已经支持Postgresql,MySql, Sqlite3,Oracle。Google App Engine也支持Django的某些部分,国内支持的平台有(SAE)Sina App Engine,(BAE)百度应用引擎。

Django 项目是一个python定制框架,它源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。

  Django 框架的核心组件有:

》》用于创建模型的对象关系映射

》》为最终用户设计的完美管理界面

》》一流的 URL 设计

》》设计者友好的模板语言

》》缓存系统

  Django(发音:[`dɡ]) 是用python语言写的开源web开发框架(open source web framework),它鼓励快速开发,并遵循MVC设计。Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。Django 根据比利时的爵士音乐家Django Reinhardt命名,他是一个吉普赛人,主要以演奏吉它为主,还演奏过小提琴等。由于Django在近年来的迅速发展,应用越来越广泛,被著名IT开发杂志SD Times评选为2013 SD Times 100,位列“API、库和框架”分类第6位,被认为是该领域的佼佼者。


================================================================================================

一、Linux平台搭建Django环境

================================================================================================

1、Linux系统环境

[[email protected] ~]# cat /etc/redhat-release 

CentOS Linux release 7.3.1611 (Core) 

[[email protected] ~]# uname -a

Linux localhost.localdomain 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

[[email protected] ~]# uname -r

3.10.0-514.el7.x86_64

[[email protected] ~]# uname -m

x86_64

2、安装python

python2.7.5已经搭建好了

[[email protected] ~]# python

Python 2.7.5 (default, Aug  4 2017, 00:39:18) 

[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> 

2、安装pip

[[email protected] ~]# pip -V

pip 9.0.1 from /usr/lib/python2.7/site-packages/pip-9.0.1-py2.7.egg (python 2.7)

3、安装setuptools

[[email protected] ~]# yum -y install setuptools

4、安装Django环境

[[email protected] ~]# easy_install django

或者[[email protected] ~]# pip install django

5、测试django是否安装成功

[[email protected] setuptools-36.5.0]# django-admin --version

1.11.5

或者

[[email protected] setuptools-36.5.0]# python

Python 2.7.5 (default, Aug  4 2017, 00:39:18) 

[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import django

>>> django.get_version()

‘1.11.5‘

【更新地址】http://doublelinux.blog.51cto.com/12300166/1965832


================================================================================================

二、django使用

================================================================================================

1、使用Django创建一个名为helloworld的项目

[[email protected] setuptools-36.5.0]# cd /home/qiu/

[[email protected] qiu]# django-admin startproject helloworld

[[email protected] qiu]# ls

helloworld  

2、运行项目helloworld

[[email protected] qiu]# cd helloworld/

[[email protected] helloworld]# ls

helloworld  manage.py

[[email protected] helloworld]# python manage.py runserver 192.168.255.128:8000

Performing system checks...


System check identified no issues (0 silenced).


You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.

Run ‘python manage.py migrate‘ to apply them.


September 16, 2017 - 06:27:28

Django version 1.11.5, using settings ‘helloworld.settings‘

Starting development server at http://192.168.255.128:8000/

Quit the server with CONTROL-C.

3、防火墙和selinux设置

[[email protected] hello]# systemctl stop firewalld

[[email protected] hello]# setenforce 0

4、浏览器中访问

技术分享

出现问题


5、解决问题

[[email protected] qiu]# cd /home/qiu/helloworld/

[[email protected] helloworld]# ls

db.sqlite3  helloworld  manage.py

[[email protected] helloworld]# cd helloworld/

[[email protected] helloworld]# ls

__init__.py  __init__.pyc  settings.py  settings.pyc  urls.py  urls.pyc  wsgi.py  wsgi.pyc

[[email protected] helloworld]# vim settings.py

将ALLOWED_HOSTS = []修改为ALLOWED_HOSTS = [‘*‘]

技术分享

6、访问正常

技术分享

================================================================================================

三、

================================================================================================


本文出自 “doublelinux” 博客,谢绝转载!

以上是关于Python Web框架之Django初探的主要内容,如果未能解决你的问题,请参考以下文章

Python之Web框架Django

Python之Web框架Django

Python之Web框架Django

Python之web框架Django

Python开发第二十一篇:Web框架之Django基础

2020Python修炼记web框架之 Django框架简介