您的位置:首页 > 数据库

django中数据库的相关操作

2016-04-24 19:38 477 查看
一、使用环境

python2.7,django>1.7

二、数据库进行配置

在setting文件中进行修改

1、找到DATABASES

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'studentInfo', # Or path to database file if using sqlite3.
'USER': 'root', # Not used with sqlite3.
'PASSWORD': '123456', # Not used with sqlite3.
'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '',
}
}

2、找到INSTALLED_APPS,添加创建的app名。

INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'article',
)

3、创建数据表

django框架可以创建数据表,但是不可以创建数据库。所以,在创建数据表之前需要手动创建数据库。

常用命令:

python manage.py syncdb。将创建的数据表导入到数据库中,如果已经创建好,修改过后,不会更新。需要使用另外的命令。

python manage.py makemigrations.

python manage.py migrate

python manage.py validate 检查有效性,在执行世纪导入数据库之前,检查语句是否有问题。

在需要使用数据库的app包里编辑models.py文件,生成基于models.Model的类,就产生一个数据表。例子如下:

def getByName(request,name):
objs = User.objects.filter(name__contains=name);
if objs:
name = [];
for each in objs:
name.append(each.name);
return HttpResponse(','.join(name));
else:
return HttpResponse("no data contain %s"%name);


View Code

5 http请求在web应用程序中的响应流程

web服务器接到一个http请求

django将web服务器传过来的请求转换成一个请求对象

django在urlconf里查找对应视图函数

调用这个视图函数,参数是请求对象、捕捉到的url参数

视图创建一个响应对象并返回

django将这个响应对象转换成web服务器可以理解的格式

web服务器将响应发送到客户端
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: