Django:(1) 环境准备与HelloWorld

虚环境准备

参考: Ubuntu中安装Python3和virtualenv


初始化Django项目

  • 进入虚环境
mkdir myproject
cd myproject
virtualenv venv -p python3
source venv/bin/activate
  • 安装Django
pip install django
  • 初始化项目
django-admin startproject myproject
cd myproject
django-admin startapp boards

Hello World!

  • 编辑配置
    在myproject/settings.py中找到INSTALLED_APPS
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    'boards',  # 译者注:建议和作者一样空一行来区别内置app和自定义的app
]
  • 编辑视图
    打开boards/views.py
from django.shortcuts import render

# Create your views here.
from django.http import HttpResponse

def home(req):
    return HttpResponse('Hello World!')
  • 编辑url
    打开myproject/url.py
from django.contrib import admin
from django.urls import path

from boards import views

urlpatterns = [
    path('', views.home, name='home'),
    path('admin/', admin.site.urls),
]
  • 启动服务器
    python manage.py runserver

  • 本地验证
    curl -i -k localhost:8000/;echo

输出:

HTTP/1.1 200 OK
Date: Mon, 02 Apr 2018 15:38:45 GMT
Server: WSGIServer/0.2 CPython/3.6.5
Content-Type: text/html; charset=utf-8
X-Frame-Options: SAMEORIGIN
Content-Length: 12

Hello World!

大功告成~


目录结构说明

myproject/
 |-- myproject/
 |    |-- boards/                <-- 我们新的Django应用(app)!
 |    |    |-- migrations/
 |    |    |    +-- __init__.py
 |    |    |-- __init__.py
 |    |    |-- admin.py
 |    |    |-- apps.py
 |    |    |-- models.py
 |    |    |-- tests.py
 |    |    +-- views.py
 |    |-- myproject/
 |    |    |-- __init__.py
 |    |    |-- settings.py
 |    |    |-- urls.py
 |    |    |-- wsgi.py
 |    +-- manage.py
 +-- venv/
  • myproject:

    • manage.py:使用django-admin命令行工具的快捷方式。它用于运行与我们项目相关的管理命令。我们将使用它来运行开发服务器,运行测试,创建迁移等等。
    • init.py:这个空文件告诉python这个文件夹是一个python包。
    • settings.py:这个文件包含了所有的项目配置。将来我们会一直提到这个文件!
    • urls.py:这个文件负责映射我们项目中的路由和路径。例如,如果你想在访问URL / about/ 时显示某些内容,则必须先在这里做映射关系。
    • wsgi.py:该文件是用于部署的简单网关接口。你可以暂且先不用关心她的内容,就先让他在那里就好了。
  • boards:

    • migrations/:在这个文件夹里,Django会存储一些文件以跟踪你在models.py文件中创建的变更,用来保持数据库和models.py的同步。
    • admin.py:这个文件为一个django内置的应用程序Django Admin的配置文件。
    • apps.py:这是应用程序本身的配置文件。
    • models.py:这里是我们定义Web应用程序数据实例的地方。models会由Django自动转换为数据库表。
    • tests.py:这个文件用来写当前应用程序的单元测试。
    • views.py:这是我们处理Web应用程序请求(request)/响应(resopnse)周期的文件。

停止服务器 退出虚环境

  • 停止服务器
    control + c
  • 退出虚环境
    deactivate

参考文献

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容