Django 访问数据库

通过命令行方式访问数据库:

[root@localhost web]$ python manage.py shell             # 进入交互模式(先安装ipython)

In [1]: from blog.models import Host                     # 导入数据模型

In [4]: node = Host.objects.all()                        # 实例化一个模型管理对象,通过这个对象来操作数据库

In [6]: node.values()                                    # 查询数据,相当于 select * from Host

In [8]: n1 = Host(hostname='node01', ip='192.168.1.1')   # 插入数据,结果返回一个表对象,需要通过对象来保存插入的数据

In [9]: n2 = Host(hostname='node02', ip='192.168.1.2')   # 插入数据,结果返回一个表对象,需要通过对象来保存插入的数据
In [10]: n1.save() # 保存到数据库,可以通过上面的 node.values() 查询插入的数据

In [11]: n2.save()                                      # 保存到数据库,可以通过上面的 node.values() 查询插入的数据
In [20]: n3 = Host()                                     # 第二种插入数据的方法,先实例化一个表对象,再通过对象来插入/保存数据

In [21]: n3.hostname = 'node03'

In [22]: n3.ip = '192.168.1.3'

In [23]: n3.save()


通过视图文件访问数据库:

[root@localhost web]$ cat web/urls.py

urlpatterns = patterns('',
    ....
    url(r'^db/$', 'blog.views.db'),    # 先定义访问的URL,然后再根据URL定义视图文件
)
[root@localhost web]$ cat blog/views.py
from django.shortcuts import render
from django.http import HttpResponse
from django.template import loader, Context
from blog.models import Host

def db(request): h = Host() h.hostname = 'node04' h.ip = '192.168.1.4' h.save() return HttpResponse("OK")



通过 Web 界面访问数据库:

[root@localhost web]$ cat blog/admin.py    # 首先需要在应用的后台管理站点配置中注册模型
from django.contrib import admin           # 注册的目的是为了让数据模型在Web后台界面中显示
from blog.models import Host               # 导入数据模型

class HostAdmin(admin.ModelAdmin):
    list_display = ['hostname', 'ip']      # 指定要显示的字段

admin.site.register(Host, HostAdmin)       # 注册数据模型
[root@localhost web]$ python manage.py runserver 0.0.0.0:8000    # Starts a lightweight Web server for development

 

 

 

 

 

     

posted @ 2019-01-30 06:05  孔雀东南飞  阅读(501)  评论(0编辑  收藏  举报