Django笔记(七)

作者: dreamer_z | 来源:发表于2019-07-13 23:21 被阅读2次

    并不知道拿服务器做什么,先熟悉一下django 的模型。

    浏览网站时,web做的就是把数据从数据库里拿出来呈现出来

    django的某一个模型对应着一个类,它提供方法供人使用,自己也要增加自定义的方法,一篇文章对应一个模型的话,他需要能保存文章、编辑文章、查看、删除,这都要在模型这方面做文章

    文档里这么说的

    模型是您的数据唯一而且准确的信息来源。它包含您正在储存的数据的重要字段和行为。一般来说,每一个模型都映射一个数据库表。
    基础:

    • 每个模型都是一个Python的类,这些类继承 django.db.models.Model
    • 模型类的每个属性都相当于一个数据库的字段。
    • 综合上诉说,Django给你一个自动生成访问数据库的API;请参阅进行查询

    设置时区、语言、连接数据库

    https://docs.djangoproject.com/zh-hans/2.0/ref/settings
    ​关于settings.py的设置介绍
    记住这个页面,好多设置都可以在这里参考
    在这个页面参考数据库的连接、时区、语言

    时区的设置

    https://docs.djangoproject.com/zh-hans/2.0/ref/settings/#std:setting-TIME_ZONE

    django_3_wx.png
    TIME_ZONE = 'Asia/Shanghai'
    

    对于怎么选择时区,点击文档里的时区列表,是时区的维基页面


    django_2_wx.png

    语言的设置

    参考

    https://github.com/django/django/blob/2.0/django/conf/global_settings.py

    找到

    LANGUAGE_CODE = 'zh-Hans'
    

    数据库设置

    数据库设置
    先新建一个库,取名my-django

    django_7_wx.png django_8_wx.png

    修改设置

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

    设置的过程


    django_5_wx.png django_6_wx.png django_9_wx.png

    安装推荐的原生的数据库驱动mysqlclient
    https://docs.djangoproject.com/zh-hans/2.0/ref/databases/

    django_10_wx.png

    安装前需要安装python、mysql的头文件库

    sudo  yum install python36-devel.x86_64 mysql-devel
    
    pip install mysqlclient
    

    现在运行应用迁移命令,看看数据库里会不会有变化

    (myenv) [root@192 mysite]# python manage.py migrate
    
    django_12_wx.png django_13_wx.png

    生成的表是django 自带的应用用到的表,可以删除了这些表,暂时没用。

    数据库算是连接上了

    ​## 新建应用
    一个项目会有多个功能,django里就是指的一个应用
    先熟悉下模型

    先新建一个名叫blog的应用

    (myenv) [root@192 mysite]# python manage.py startapp blog
    

    把这个应用添加到settings文件中的INSTALLED_APPS列表中

    依然是settings 里的内容的修改,在应用列表里添加 blog

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'blog',
    ]
    
    django_14_wx.png

    创建article 模型

    一篇文章大概包括,标题、作者、描述、内容等等吧
    编辑 blog/models.py

    创建几个字段,标题、浏览量、创建和更新时间

    新建应用

    一个项目会有多个功能,django里就是指的一个应用

    先新建一个名叫blog的应用

    (myenv) [root@192 mysite]# python manage.py startapp blog
    

    把这个应用添加到settings文件中的INSTALLED_APPS列表中

    创建article 模型

    一篇文章大概包括,标题、作者、描述、内容、浏览量、评论量、点赞量、创建日期、更新日期、删除日期

    编辑 blog/models.py

    创建几个字段

    ​from django.db import models
    import django.utils.timezone as timezone
    # Create your models here.
    ​
    class Article(models.Model):
        title = models.CharField('标题', max_length=30)
        view_count = models.IntegerField('浏览量')
        created_at = models.DateTimeField('创建时间', default = timezone.now)
        updated_at = models.DateTimeField('更新时间', auto_now=True)
    ​
    ​
        class Meta:
            db_table = "articles"
            # ordering = ["created_at"]
    

    运行迁移命令

    创建迁移记录

    (myenv) [root@192 mysite]# python manage.py makemigrations
    

    迁移

    (myenv) [root@192 mysite]# python manage.py migrate
    
    django_16_wx.png

    查看数据库,articles 表成功创建

    django_15_wx.png

    新建文件blog/article.py

    from django.http import HttpResponse
     
    from blog.models import Article
    import datetime
    ​
    def create(request):
        new_article = Article(title='测试文章标题一',view_count=199)
        new_article.save()
        return HttpResponse("添加成功")
    

    新建文件blog/urls.py

    from django.urls import path
    from . import article
    ​
    urlpatterns = [
        path('create', article.create),
    ]
    

    修改mysite/mysite/urls.py

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

    现在访问在主机上访问下面的地址: 192.168.168.128/blog/create

    数据库里也会多出一条记录


    django_17_wx.png

    刷新一下表,记录添加了


    django_18_wx.png

    今天完成了简单的增
    仓促发布,有错请一定留言纠正

    来自公众号号:

    胡里有仁

    相关文章

      网友评论

        本文标题:Django笔记(七)

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