Django数据库基本操做(MySQL)

以一个示例工程为例:html

       下面是工程文件目录:python

      

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

1、定义模型django

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

2.建立App ,名为CommunityModelurl

django-admin startapp CommunityModel

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

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.

若要生成多张表,能够经过编写多个类实现。3d

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

执行下列命令htm

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

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

2、数据库操做

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对数据库的操做有不少方式,更多复杂具体的操做能够参考下列文章 :

原文出处:https://www.cnblogs.com/liqinglong/p/11153974.html

相关文章
相关标签/搜索