django基础(1)

一、什么是Django?

Django是一个用Python编写的开放源代码的web应用框架,代码是开源的。
此系统采用了MVC的框架模式,也可以称为MTV模式。
MVC:M(model/模型层)V(view/视图层)c(controller/控制层),
MTV:M(model/模型层),V(view/处理业务逻辑,和controller类似)。

二、安装virtualenv

virtualenv使用场景:当开发成员负责多个项目的时候,每个项目安装的库又是有很多差距的时候,会使用虚拟环境将每个项目的环境隔离开。

  1. 检查python版本(并进入其命令行)
    python
  2. 在命令行输入pip3,检查pip模块是否安装成功(pip3模块负责python3的下载),当返回以下结果表示安装成功
    pip3
    这里写图片描述
  3. 安装虚拟环境
    pip3 install virtualenv
  4. 检查virtualenv是否安装成功
    virtualenv
    输出以下信息表示安装成功!
    这里写图片描述
  5. 在任意路径下创建一个文件用来保存django环境(建文件夹的目的是便于管理运行环境)
  6. 进入以上新建文件夹路径,并运行以下命令进行env环境安装
    virtualenv –no-site-packages 文件名 #新建一个虚拟环境
  7. 进入到script路径下,并启动django环境
    activate #进入虚拟环境,deactivate退出虚拟环境
    pip freeze #输出本地包环境至文件

三、安装Django

  1. 安装pymysql
    pip install pymysql
  2. 安装djangoV1.11
    pip install django==1.11
    1.11表示版本号信息。当不填版本号,默认最新版本。
    这里写图片描述
  3. 在任意路径下创建一个workspace文件夹,并运行以下命令,创建项目
    django-admin startproject 项目名称
  4. 进入helloworld路径运行以下命令启动ajangp项目

    python manage.py runserver ip:端口号
    也可以只运行python manage.py runserver,后面的地址和端口号不写。运行成功后会出现以下信息。
    这里写图片描述

  5. 以上服务被启动后,会看见一个网址127.0.0.1:8000,打开浏览器,如果djiango环境搭建成功,页面会给出相应的提示。

这里写图片描述

PS:可以修改环境中setting.py文件修改LANGUAGE_CODE的值,将语言设置为中文。

这里写图片描述

四、新建一个项目

  1. 运行cmd,进入到django环境所在的盘
    cd ../../../

  2. 查看存在的文件信息
    dir

  3. 启动django服务
    cd env\est\Script
    activate

  4. 进入工作区间,创建工程名称
    django-admin startproject 工程名称

  5. 创建以上项目文件夹后,里面会生产一些相关文件。此时进入文件夹并创建一个新的工程
    python manage.py startapp 工程名称

  6. 此时打开pycharm对项目进行编辑,具体代码参看git中2018.4.24项目文件夹

  7. 在pycharm中打开C:\workspace\helloworld文件,并进入python解释器Project
    Interpreter,进入到add local

这里写图片描述
这里写图片描述

这里写图片描述

8.选择existing environment,在解释器处添加django环境搭建(1)中的python.exe所在的路径
这里写图片描述

  1. 进入run-debug-edit
    configure,将manage名字修改为hello,参数parameters修改为runserver,后面加上想设置的端口号,保存设置(配置Debug参数的目的:为了当你的views中的方法出错时,你可以通过debug的方式来找到出错的地方进行调试,如果不使用debug模型,出错后网页返回对应的不详细的错误,具体的调试还是得通过debug来实现。配置了Debug,网页报错的时候就不用每句话后写一个print来看是哪个变量出错或为空指针。)

这里写图片描述
这里写图片描述
这里写图片描述

  1. 在pycharm控制台运行:python manage.py startapp
    app,左上方helloworld文件夹下会出现一个app的python文件夹(如果找不到Terminal,可以点击左下角小方块打开Terminal)

    init_.py:初始化
    admin.py: 管理后台注册模型
    apps.py: settings.py里面注册app的时候需要使用到。一般不推荐这样使用
    from app.apps import AppConfig
    AppConfig.name
    models.py: 写模型的地方
    views.py: 写处理业务逻辑的地方

  2. 在helloworld/setting中INSTALLED_APPS下加入以下参数

这里写图片描述

五、MVC设计模式

MVC是一种软件开发的方法,它把代码的定义和数据访问的方法(模型)与请求逻辑(控制器)还有用户接口(视图)分开来。

models.py:该文件主要用一个python类来描述数据表。称为模型(model)。运用这个类,你可以通过简单的python代码来创建、检索、更新、删除数据库中的记录而无需写一条又一条的SQL语句。

views.py:该文件包含业务逻辑。

html模板文件:描述页面设计,使用带基本逻辑声明的模板语言,如{% for book in book_list %}。

六、urls.py

该文件指出了什么样的URL调用什么样的视图。
appname/urls.py代码如下:

from django.conf.urls import url
from app import views

urlpatterns = [
    url(r'hello/', views.first_hello),
]

七、hello/urls.py

from django.contrib import admin
from app import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'hello/', views.first_hello),
]

八、app/views.py

from django.http import HttpResponse
from django.shortcuts import render

def first_hello(request):
return HttpResponse('hello world')

运行hello文件(原来的manage),打开网址http://127.0.0.1:8080/hello,可以看到页面输出’hello world!’

10.在Terminal运行以下命令,创建一个stu的python工程

python manage.py startapp stu

11.在helloworld/urls.py中输入以下代码

from django.conf.urls import url, include
from django.contrib import admin
from app import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'app/', include('app.urls')),
    url(r'stu/', include('stu.urls'))
    # url(r'hello/', views.first_hello),
    # url(r'hellogirl/', views.girl_hello)
]

stu/modes.py:
from django.db import models

class Student(models.Model):
    name = models.CharField(max_length=20)

sex = models.BooleanField()

class Meta:
    db_table = 'stu'

stu/apps.py:
from django.apps import AppConfig
class StuConfig(AppConfig):
name = ‘stu’

stu/urls.py:
from django.conf.urls import url

from stu import views

urlpatterns = [
    url(r'addstu/', views.addStudent),
]
stu/views.py:
from django.http import HttpResponse
from django.shortcuts import render
from stu.models import Student

def addStudent(request):
    print(request)

    return HttpResponse('添加成功')
运行hello.py文件,进入路径http://127.0.0.1:8080/stu/addstu/,页面成功打开表示以上配置无误

13.打开Navicat,创建数据库,可以按如下方式也可以通过mysql语句

这里写图片描述

14.在helloworld/setting中输入如下参数,连接到数据库

这里写图片描述

15.正确运行hello.py文件后,在Terminal运行以下命令迁移数据库

python manage.py makemigrations
python manage.py migrate
刷新数据库firsthello,会看到成功的创建了表

16.在stu/views中输入以下代码

from django.http import HttpResponse
from django.shortcuts import render
from stu.models import Student

def addStudent(request):
    print(request)
    stu = Student()
    stu.name = '张三'
    stu.sex = 1
    stu.save()

return HttpResponse('添加成功')

17.运行hello.py文件,并进入http://127.0.0.1:8080/stu/addstu/,查看数据表stu,会发现里面增加了一条信息。(每刷新一次页面http://127.0.0.1:8080/stu/addstu/,数据表stu中就会增加一行记录)

猜你喜欢

转载自blog.csdn.net/u014229742/article/details/80049509
今日推荐