美文网首页
Django入门

Django入门

作者: 淇漯草 | 来源:发表于2020-04-24 18:06 被阅读0次

    安装Django

    基本包

    pip3 install Django -i https://pypi.tuna.tsinghua.edu.cn/simple
    sudo apt install python3-django
    

    Django的Project结构

    django-admin startproject myProject
    django-admin startapp myApp
    

    :目前为止创建了一个文件夹,结构如下

    image.png
    文件名 用途
    __init__.py 空文件,指明该文件夹为python包
    settings.py 代表该python包的配置
    urls.py 负责映射路线和路径
    wsgi.py 网关接口(不必在意)

    运行服务器

    python3 manage.py runserver
    

    此时打开http://127.0.0.1:8000可见到网页

    修改端口 与IP
    python manage.py runserver 8080

    Django的两个重要概念

    app: 一个Web应用,包含一系列模型,如数据表,视图,模型等
    project: 包含一系列的apps与配置

    app下的具体结构

    django-admin startapp boards
    
    当前文件架构模型
    文件名 用途
    migrations/ 保存改变:跟踪models文件,保持数据库与models.py一致
    admin.py 内置的在Django app的配置
    apps app本身的配置文件
    models 我们定义Web实体的地方,models会自动转换为数据表 (database table)
    tests.py 写单元测试单元
    views.py 控制Web应用的请求/回应循环

    至此:settings.py会自动建立一个apps的配置文件。除了已有的六个之外,我们自行添加 'boards' .


    settings.py内部内容增添情况

    创建第一个view

    1.建立一个视图 views.py

    from django.http import HttpResponse
    def home(request):
        return HttpResponse('Hello, World!')
    

    此时当收到请求,返回Hello,World!
    2.告诉Django何时提供这个视图 urls.py

    from . import views
    urlpatterns = [
        path('', views.视图名, name='视图名'),
    ]
    

    3.project的urls包含app的urls

    from django.contrib import admin
    from django.urls import path, include
    urlpatterns = [
        path('polls/', include('polls.urls')),
        path('admin/', admin.site.urls),
    ]
    

    localhost:8000/blog/
    可以看见返回结果HelloWorld

    参数含义

    path() : 有四个参数, route、view
    route用正则表达式匹配,view调用特定的视图函数
    kwargs(可传参数,如字典)、name(为url取名,任意地方可以引用它)

    在Django中使用MySQL数据库

    1.安装MySQLdb库

    pip install MySQLdb
    

    2.新建项目

    django-admin.py startproject myProject
    cd myProject
    django-admin.py startapp myApp
    

    3.在mysql中创建表

    create database myDatabase default charset = utf8
    

    4.修改myProject的settings,尾部添加blog(app)
    INSTALLED_APPS内部尾部添加'blog'
    修改DATABASES

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'myDatabase',
            'USER':'root',
            'PASSWORD':'123456',
            'HOST':'',
            'PORT':'',
        }
    }
    

    5.在blog的models.py中添加

    from django.db import models
    
    class Employee(models.Model):
         name=models.CharField(max_length=20)
    

    6.同步数据库

    manage.py migrate 
    

    7.查看MySQL数据库的表

    use myDatabase;
    show tables;
    

    参考资料:

    Django入门教程
    Django中使用MySQL数据库
    syncdb解决方案-->migrate

    相关文章

      网友评论

          本文标题:Django入门

          本文链接:https://www.haomeiwen.com/subject/iepfwhtx.html