Django笔记(七)

并不知道拿服务器做什么,先熟悉一下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笔记(七))