Django Web应用程序(一)

2018-01-31  本文已影响0人  Blue_Eye

Python 版本

Python 3.5.2

安装 virtualenv

c5220056@GMPTIC:~/myworkplace$ virtualenv ll_env --python=python3
Already using interpreter /usr/bin/python3
Using base prefix '/usr'
New python executable in /home/c5220056/myworkplace/ll_env/bin/python3
Also creating executable in /home/c5220056/myworkplace/ll_env/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.

激活虚拟环境

c5220056@GMPTIC:~/myworkplace$ source ll_env/bin/activate
(ll_env) c5220056@GMPTIC:~/myworkplace$ 

安装 Django

(ll_env) c5220056@GMPTIC:~/myworkplace$ pip3 install Django
Collecting Django
  Using cached Django-2.0.1-py3-none-any.whl
Collecting pytz (from Django)
  Using cached pytz-2017.3-py2.py3-none-any.whl
Installing collected packages: pytz, Django
Successfully installed Django-2.0.1 pytz-2017.3

在 Django 中创建项目

在处于活动的虚拟环境下(ll_env包含在括号内),执行如下命令来新建一个项目:

(ll_env) c5220056@GMPTIC:~/myworkplace$ django-admin.py startproject learning_log .
(ll_env) c5220056@GMPTIC:~/myworkplace$ ls
learning_log  ll_env  manage.py
(ll_env) c5220056@GMPTIC:~/myworkplace$ ls learning_log/
__init__.py  settings.py  urls.py  wsgi.py

注: 命令末尾的句点让新项目使用合适的目录结构,这样开发完成后可轻松地将应用程序部署到服务器。

目录 learning_log 下文件的作用:
  1. settings.py: 指定 Django 如何与你的系统交互以及如何管理项目。 在开发项目过程中,我们将修改其中一些设置,并添加一些设置。
  2. urls.py: 告诉 Django应创建哪些网页来响应浏览器请求。
  3. wsgi.py: 是 web server gateway interface(Web服务器网关接口)的首字母缩写, 帮助 Django 提供它创建的文件。

创建数据库

(ll_env) c5220056@GMPTIC:~/myworkplace$ 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 auth.0009_alter_user_last_name_max_length... OK
  Applying sessions.0001_initial... OK
(ll_env) c5220056@GMPTIC:~/myworkplace$ ls
db.sqlite3  learning_log  ll_env  manage.py

首次执行命令 migrate 时,将让 Django 确保数据库与项目的当前状态匹配。 在使用 SQLite 的新项目中首次执行这个命令时,Django将新建一个数据库。Django 指出它将创建必要的数据库表, 用于存储我们将在这个项目(Synchronize unmigrated apps, 同步未迁移的应用程序)中使用的信息,再确保数据库结构与当前代码(Apply all migrations, 应用所有的迁移)匹配。
SQLite是一种使用单个文件的数据库。

查看项目

(ll_env) c5220056@GMPTIC:~/myworkplace$ python manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).
January 31, 2018 - 12:46:57
Django version 2.0.1, using settings 'learning_log.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

打开浏览器,输入URL: http://localhost:8000/ 或 http://127.0.0.1:8000

初步建立成功显示
上一篇下一篇

猜你喜欢

热点阅读