19 sqlite3基本操作
命令模式:
sqlite3 数据文件名
显示所有表: .tables
查看表结构: .schema table_name
标准的sql语句: ddl dml
退出: .quit
django中:
engine: ..... backends.sqlite3
name :
20 记录操作
查询:
Emp.objects.all() --- list item--recorder
Emp.objects.get(条件) --- 单条记录返回 ,0, 多条 异常
删除:
单条记录删除:对象.delete() 多条记录删除: 对象s.delete()
21 admin使用:通过admin完成记录的增、删、改操作
urlConfig :
from django.contrib import admin
admin.autodiscover()
url(r'^admin/', include(admin.site.urls)),
settings:
INSTALLED_APPS = (
'django.contrib.admin',
app/admin.py
from django.contrib import admin
from blog.models import Emp
admin.site.register(Emp)
python manager syncdb
22 admin用户创建
python manage.py createsuperuser
23 model class
def __unicode__(self):
24 models.Field
作用:
1 DB中列类型
2 针对admin,对应html组件
3 数据验证
参数:
特定参数
通用参数:
null
blank
choices
default
help_text
primary_key
unique
verbose_name=u"中文提示"
Automatic primary key fields¶
id = models.AutoField(primary_key=True)
25 admin中增加显示列
class EmpAdmin(admin.ModelAdmin):
list_display = ['字段名',....]
search_fields = ['字段名',.....] #字段---字符,文本
list_filter
admin.py 中注册
26 db记录筛选:
Emp.objects.filter(name='Alice', sex='f')
select * from emp where name='Alice' and sex='f'
order_by 升序 降序
修改默认的排序:
内部类: class Meta: ordering = ['字段名']
select .... limit 3,2 -->切片操作
Field
FileField(upload_to=)
filter ----->field_lookups
小结:
all()
get()
order_by()
filter(field_lookups)
27 表间关系:
1-1
n-1
n-m
n-1
models.ForeignKey(表类对象)
1 使用admin完成数据的添加
2 代码中显示:
1 分类显示,(自上而下): filter()
news = New.objects.filter(category=categrorys[0])
2 确定分类(自下而上):
new.category
new.category_id
28 foreignkey
增
查询:
all
get
filter
exclude
删
改
1 获取单个对象, 修改字段属性, save()
2 多个对象(结果集)query_set
update(字段属性=)
返回值:修改的记录数
增(foreignkey)
删(foreignkey) = None
29 定义了ManyToManyField ---Book
author
book
b1 = Book()
b1.name = 'aaa'
b1.save()
b1.authors ------- querySet
1 添加: add(author, ....)
2 删除: remove(author,...) --- 删除指定对象
clear() ---- 全部删除
b1.save()
查询:
book.authors.all()
.filter
反向查询(manytomanyfiled所参照的类实例):
alen.book_set.all()
.get
.filter
.exclude
30 form表单数据
request.GET
HttpResponseRedirect()
注册
登录
转到主页
用户信息--models--User
password -- md5 or sha1
birthday ---- date