Django读取Mysql数据并显示在前端的实例

yipeiwu_com6年前Python基础

前言:

由于使用Django框架来做网站,需要动态显示数据库内的信息,所以读取数据库必须要做,写此博文来记录。

接下来分两步来做这个事,添加网页,读取数据库;

一、添加网页

首先按添加网页的步骤添加网页,我的网页名为table.html, app名为web;

table.html放到相应目录下;

forms.py文件提前写好;

修改views.py,做好视图

from django.shortcuts import render
from web import forms
def table(request):
  table_form=forms.SignupForm()
  return render(request,'table.html',{'form':table_form})

修改url.py,添加路径

from django.conf.urls import url,include
from django.contrib import admin
from web import views
urlpatterns = [
  url(r'^signup/$',views.signup,name='signup'),
  url(r'^index/$',views.index,name='index'),
  url(r'^table/$',views.table,name='table') #这个是table的
]

至此可以访问

http://127.0.0.1:8000/web/table/(http//127.0.0.1:8000/app/index)

正常显示网页内容。

二、读取Mysql并显示

在models.py中创建数据库 Employee,并设置name列(默认会有id列,为主键);

from __future__ import unicode_literals
from django.db import models
# Create your models here.
class Employee(models.Model):
   name=models.CharField(max_length=20)

保存并同步数据库

python manage.py syncdb

这时进入到mysql中,找到我们django设置的数据库,进入其中,

看到如下表:

图1 数据库表项

最后一个web_employee为我们刚创建的表(web是我的app名字,前缀是自动加的);

使用insert语句插入相应数据,显示如下:

图2 employee表           

ok数据已经添加完毕,接下来是在网页端显示,网页通过前面的配置已经可以正常显示,现在加入显示数据库信息。

首先修改views.py,一样,视图的修改都在此文件

from django.shortcuts import render
from web import forms
from models import Employee    #插入employee表
from django.shortcuts import HttpResponseRedirect,Http404,HttpResponse,render_to_response
# Create your views here.
def table(request):
  table_form=forms.SignupForm()  #样式 ,在forms.py里配置好了
  names=Employee.objects.all()  #获取我们的数据库信息到names里
  #return render(request,'table.html',{'form':table_form})
  return render_to_response("table.html",locals()) #必须用这个return

变量names读取了我们的数据,接下来到table.html中

<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Upload Successfully</title>
  </head>
  <body>
    <p>学生名单</p>
    {% for name in names %}
    <p>{{name.id}}   :   {{name.name}}</p>
    <br>
    {% endfor %}
  </body>
</html>

用循环读取names里面的信息,name.id与name.name 是我们表中的两列,如上面图2。

最终结果如下:

图3 效果图

以上这篇Django读取Mysql数据并显示在前端的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python 列表输出重复值以及对应的角标方法

如下所示: a = [99,1,2,1,3,4] # 集合存储重复数据 b=set() for i in a: if a.count(i)>1: b.update(...

Python2/3中urllib库的一些常见用法

什么是Urllib库 Urllib是Python提供的一个用于操作URL的模块,我们爬取网页的时候,经常需要用到这个库。 升级合并后,模块中的包的位置变化的地方较多。 urllib库对照...

菜鸟使用python实现正则检测密码合法性

客户系统升级,要求用户密码符合一定的规则,即:包含大小写字母、数字、符号,长度不小于8,于是先用python写了个简单的测试程序: 在写解决方案前,列一下 python正则表达式中的特殊...

使用pdb模块调试Python程序实例

在Python中,语法错误可以被Python解释器发现,但逻辑上错误或变量使用错误却不容易发现,如果结果没有符合预期,则需要调试,一个很好的调试工具:Python自带的pdb模块。pdb...

详解Python 协程的详细用法使用和例子

详解Python 协程的详细用法使用和例子

从句法上看,协程与生成器类似,都是定义体中包含 yield 关键字的函数。可是,在协程中, yield 通常出现在表达式的右边(例如, datum = yield),可以产出值,也可以不...