经过这几天的折腾,经历了Django的各种报错,翻译的内容虽然不错,但是与实际的版本有差别,会出现各种奇葩的错误。现在终于找到了解决方法:查看英文原版内容:http://djangobook.com/
加入你使用的是CentOS系统或者Mac,默认版本是2.X,请及时更新版本到3.X
书中是这么说的:
You can see that, in the above example, Python interactive mode is running Python 2.7. This is a trap for inexperienced users.
On Linux and Mac OS X machines, it is common for both Python 2 and Python 3 to be installed. If your system is like this, you
need to type python3 in front of all your commands, rather than python to run Django with Python 3.
对于没有经验的人来说,使用python2.7 ,这是一个陷阱! Dangjo是支持python 3 的
内容参考 http://djangobook.py3k.cn/chapter02/
刚刚接触python的,还不知道有pip或者easy_install这样的在线一键安装模块的傻瓜方式,在安装python软件时遇到各种奇怪的问题,所以建议先了解一下pip。具体可以参考下一篇文章 python学习笔记--easy_install和pip
建议学习时更新python到新版本:此处是python3.4.4
安装前准备:
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
官方发布版安装
从 http://www.djangoproject.com/download/ 下载安装最新的官方发布版。注意:如果python的版本不是很高,不建议下载高版本的Django,否则可能会有类似的报错:
Django 使用了 Python 标准的 distutils 安装法,在 Linux 平台可能包括如下步骤:
tar xzvf Django-*.tar.gz cd Django-* sudo python setup.py install
Django初始化
第一次使用 Django,必须进行初始化设置:新建一个工作目录 /home/python/django/ ,然后进入该目录。
因为是使用的 setup.py 工具进行的 Django 安装, django-admin.py 应该已被加入了系统路径中。在 Windows 平台上则需要更新 PATH 环境变量。
可以使用查看是否已经填加到了环境变量
which django-admin.py
运行下面的命令在当前目录创建一个 mysite 目录。
django-admin.py startproject mysite
__init__.py manage.py settings.py urls.py
其中:
__init__.py :让 Python 把该目录当成一个开发包 (即一组模块)所需的文件。
manage.py :一种命令行工具,可让你以多种方式与该 Django 项目进行交互。
目录建议的位置:根目录 之外 的某些目录中
开发服务器
Django 带有一个内建的轻量级 Web 服务器,可供站点开发过程中使用。这个服务器是用来快速开发站点,上线前无需使用apache。该开发服务器会监测代码变动并将其自动重载,这样一来,你可快速进行项目修改而无需作任何重启。
现在进入mysite目录,并运行下面命令。你将看到如下输出:
python manage.py runserver
Validating models... 0 errors found. Django version 1.0, using settings 'mysite.settings' Development server is running at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
该服务器不能作为生产中使用的服务器。在同一时间,该服务器只能可靠地处理一次单个请求,并且没有进行任何类型的安全审计。
可能遇到的错误:
You have unapplied migrations; your app may not work properly until they are applied. Run 'python manage.py migrate' to apply
处理方法:就按照提示来:
python manage.py migrate
为服务器指定主机或端口
默认情况下, runserver 命令在 8000 端口启动开发服务器,且只监听本机连接。要想要更改服务器的IP和端口,加入参数:
python manage.py runserver 0.0.0.0:8080
会让 Django 监听所有网络接口,因此也就让其它电脑可连接到开发服务器了。
现在用网页浏览器访问 http://127.0.0.1:8000/
注意:访问有时可能会很慢,只要启动没有报错,请耐心等待:
出现这个页面,表示已经启动成功 (^o^)/YES!