• Django数据库基本操作(MySQL)


    以一个示例工程为例:

           下面是工程文件目录:

          

          untited为项目文件(一般与根目录同名),CommunityModel为一个定义数据库模型的APP

    一、定义模型

    1.首先配置好数据库,在untited的setting.py中修改数据库配置代码

    2.创建App ,名为CommunityModel

    django-admin startapp CommunityModel

    并在执行上述命令生成的CommunityModel文件的models.py中添加下示代码,用以生成一张数据表

    from django.db import models
    
    
    class Article(models.Model):
        name = models.CharField(max_length=20)
        title = models.TextField()
        jianjie = models.TextField()
        article = models.TextField()
        time = models.DateTimeField(auto_now_add=True)
    # Create your models here.

    若要生成多张表,可以通过编写多个类实现。

    3.根据模型,生成数据库

    执行下列命令

    python manage.py migrate 
    python manage.py makemigrations TestModel
    python manage.py migrate TestModel

    命令执行成功后,查看数据库可以发现,生成下图所示 名为communitymodel_article的数据表

    二、数据库操作

    1.编写数据库操作方法

    在untited目录下新建article.py,并编写数据库操作的相关代码。如下所示,为一个增加记录操作,一个查询操作(关于数据库基本操作之后介绍)。

    from django.http import HttpResponse
    from CommunityModel.models import Article
    from django.db import connection
    from django.http import JsonResponse
    
    def _add(request):
        name1 = request.POST.get('name')
        title1 = request.POST.get('title')
        jianjie1 = request.POST.get('jianjie')
        article1 = request.POST.get('article')
        try:
            test1 = Article(name=name1, title=title1, jianjie=jianjie1, article=article1)
            test1.save()
            return JsonResponse(1, safe=False)
        except:
            return JsonResponse(0, safe=False)
    
    def _query(request):
        list = Article.objects.all()
        return JsonResponse(list, safe=False)

    在untited目录下的urls.py中增加url配置代码,使数据库操作的方法能通过url调用

     url(r'^addarticle$', article._add),
     url(r'^queryarticle$', article._query)

    2.具体数据库操作

    test1 = Article(name="name", title="title", jianjie="jianjie", article="article")
    test1.save()

    test1 = Article.objects.get(name="name")
    test1.delete()

    test1 = Article.objects.get(name="name")
    test1.name = "user"
    test1.title = "head"
    test1.jianjie = "hello"
    test1.article = "hello,world"
    test1.save()            

    list = Article.objects.all()
    return JsonResponse(list, safe=False) #返回查询结果

    参考文章:

        django对数据库的操作有很多方式,更多复杂具体的操作可以参考下列文章 :

  • 相关阅读:
    luogu 2617
    BZOJ 3295
    BZOJ 2458
    luogu 3810
    Uva
    Uva
    Uva
    Uva
    Uva
    成员函数的const到底修饰的是谁
  • 原文地址:https://www.cnblogs.com/liqinglong/p/11153974.html
Copyright © 2020-2023  润新知