首页 > 代码库 > Django 基础(二)
Django 基础(二)
1. 多对多表之间的保存
方式一:
u2 = User.objects.get(id=2) g2 = Group.objects.get(id=2) u2.group_relation.add(g2) #在关系表中存入关联数据
方式二:
name = request.POST.get(‘name‘,None) username = request.POST.get(‘username‘,None) password = request.POST.get(‘password‘,None) gplist = request.POST.getlist(‘groupId‘) user = Users.objects.create(name=name,username=username,password=password) user.save() glist = UserGroup.objects.filter(id__in=gplist) user.groupId.add(*glist) # 或 #for gord in gplist: # group = UserGroup.objects.get(id=gord) # user.groupId.add(group)
方式三:
u2 = User.objects.get(id=2) g2 = Group.objects.get(id=2) g2.user_set.add(u2) #无多对多字段方添加关联, _set 是固定搭配,它的前面是多对多字段所在类的类名的小写
2. 多对多表之间的数据获取
u2 = User.objects.get(id=2) g2 = Group.objects.get(id=2) print(u2.group_relation.all()) print(u2.group_relation.all()).filter(id=1) print(u2.group_relation.all()).filter(caption=‘CEO‘)
3. Session
a) request.session[‘is_login’] = True 用session存值 b) is_login = request.session.get(‘is_login’,None) 获取session的值 c) del request.session[‘is_login’] 销毁session d) settings.py中设置 SESSION_COOKE_AGE=10设置session10秒钟后过期自动销毁 i. SESSION_EXPIRE_AT_BROWSER_CLOSE 设置session是否随着浏览器关闭而销毁
4. Cooke
response = render_to_response(‘index.html’,ret) response.set_cookie(‘key’, ‘value’) #设置cooke print request.COOKIES #获取cookie request.COOKIES.get(‘page_num’,10)
Django 基础(二)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。