zoukankan      html  css  js  c++  java
  • 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对数据库的操作有很多方式,更多复杂具体的操作可以参考下列文章 :

  • 相关阅读:
    Learn Prolog Now 翻译
    Learn Prolog Now 翻译
    Learn Prolog Now 翻译
    Learn Prolog Now 翻译
    Learn Prolog Now 翻译
    Learn Prolog Now 翻译
    Learn Prolog Now 翻译
    Learn Prolog Now 翻译
    Learn Prolog Now 翻译
    Learn Prolog Now 翻译
  • 原文地址:https://www.cnblogs.com/liqinglong/p/11153974.html
Copyright © 2011-2022 走看看