django1.10开发博客(2)——入门
2016-12-28 本文已影响0人
暗夜望月
Django是一个开放源代码的免费Web应用框架,由Python写成。采用了MVC的软件设计模式,即模型M,视图V和控制器C。django能够帮助你快速写出一个Web应用, 因为它包含了绝大部分的组件,比如认证,表单,ORM,Session,安全,文件上传,页面模板等,避免了重复造轮子。本节我们将开始建立一个项目,做一些初步配置,连接上数据库,然后跑起来!
官方网站:https://www.djangoproject.com/
项目创建
在创建项目前,还是要先确认我们已经处于之前建立的虚拟环境myvenv中。因为我们是在myvenv中安装了django插件,如果不在此环境内的话django插件无效。
接下来一步是生成项目骨架,django为我们提供了很多有用的脚本让我们可以很方便的使用简单的命令即可生成基本的目录和文件。在想建立项目的地方运行命令:
(myvenv) $ django-admin.py startproject mysite
mysite
就是我们的项目名。该目录结构如下:
mysite
├───manage.py
└───mysite
settings.py
urls.py
wsgi.py
__init__.py
-
manage.py
:一种命令行工具,允许你以多种方式与该Django项目进行交互。是管理网站的脚本,可以使用它来启动一个简单的web服务器,这个对于开发调试非常有用。一般不需要编辑这个文件。 -
settings.py
:该Django项目的核心配置文件。 -
urls.py
:Django项目的URL设置,是路径配置文件,可以配置URL到实际Controller的映射关系,可视其为你的django网站的目录。 目前,它是空的。 -
__init__.py
:让 Python 把该目录当成一个开发包 (即一组模块)所需的文件。 这是一个空文件,一般你不需要修改它。 -
wsgi.py
:与部署上线有关的一个文件,暂时不用管它。
修改默认配置
修改settings.py
的时区与语言配置:
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
配置数据库
我们使用默认的sqlite3数据库,最简单:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
为我们的博客系统生成数据库,我们需要在第一级mysite
下运行下面的命令:
(myvenv) $ python manage.py migrate
出现类似如下信息就表示成功了:
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying sessions.0001_initial... OK
mysite
目录下生成了db.sqlite3
数据库文件。
运行服务器
通过manage.py来运行服务器:
(myvenv) $ python manage.py runserver
运行成功会显示:
Performing system checks...
System check identified no issues (0 silenced).
October 19, 2016 - 14:35:07
Django version 1.10.2, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
最后一句表示我们可以按CTRL+C停止服务器。
浏览器中打开 http://127.0.0.1:8000/ 若出现
那么恭喜你已经成功走出了博客制作的第一步!
127.0.0.1:8000是默认的IP和端口号,也可以像下面这样自定义运行,没有什么区别。
(myvenv) $ python manage.py runserver 7000
2016.10.19