Beispiel #1
0
def register(request):
  """/home/register/ 注册"""
  template_val = {}
  if request.method == 'GET':
    # GET方法,显示注册表单
    template_val['form'] = Register_form()

    return render_to_response('home/register.html',
        template_val,
        context_instance=RequestContext(request))
  else:
    # POST方法,提交注册表单,进行数据验证并插入到数据库
    register_form = Register_form(request.POST)
    if register_form.is_valid():
      # 验证通过,存储用户并转向
      data = register_form.cleaned_data
      user = _fn.create_user(username=data['username'], password=data['password'], studentId=data['studentId'])
      user.save()
      atschool = pm.AtSchool(userId=user, mygdufsPwd=data['mygdufs_pwd'])
      atschool.save()
      # login this user
      auth_login(request, authenticate(username=user.username, password=data['password']))
      return HttpResponseRedirect(_fn.getRedirect(request))
    else:
      # 验证失败,修改表单
      template_val['form'] = register_form
      return render_to_response('home/register.html',
        template_val,
        context_instance=RequestContext(request))
Beispiel #2
0
def register(request):
  """/api/home/register/ 注册
  如果表单验证通过则注册用户并登录,返回username和sessionid
  如果表单验证未通过则返回表单错误信息formErrors
  接收data结构:
    {
      'username': '',
      'password': '',
      'studentId': '',
      'mygdufs_pwd': '',
      'apn_username': '',//非必须
      'groups': [1,2,3],//非必须,群组的id
    }
  返回data结构:
    {
      'success': True,
      'resultMsg': '',
      'sessionid': '',
      'username': ''
    }
  """
  if request.method == 'POST':
    data = json.loads(request.POST.get('data', '{}'))
    form = Register_form(data)
    if form.is_valid():
      # 验证通过,存储用户并登陆,同时返回sessionid
      user = _fn.create_user(username=data['username'], password=data['password'], studentId=data['studentId'], apn_username=data.get('apn_username', ''), groups=data.get('groups', []))
      atschool = pm.AtSchool(userId=user,mygdufs_pwd=data['mygdufs_pwd'])
      atschool.save()
      # 登录
      return login(request, data={
        'username': data['username'],
        'password': data['password'],
      })
    return HttpResponse(json.dumps({
      'success': False,
      'resultMsg': '表单验证错误',
      'formErrors': form.errors,
      'data': data,
    }))
  else:
    return HttpResponse(json.dumps({
      'success': False,
      'resultMsg': '请求方式出错,只能为POST',
    }))
Beispiel #3
0
def manage(request):
  """管理工具集,包括测试信息的添加等操作"""
  if request.GET.get('token', '') == 'molice':
    # 验证成功
    progress = {'group':False,'user':False}
    result = ''
    # 增加群组
    if not Group.objects.filter(name__iexact='校学生会'):
      Group(name='学生后勤服务信息中心').save()
      Group(name='校学生会').save()
      Group(name='08计算机4班').save()
      progress['group'] = True
      result += '添加群组成功;'
    else:
      result += '群组已存在;'
    # 增加用户
    if not User.objects.filter(username__iexact='molice'):
      user = _fn.create_user(username='******', password='******', studentId='20081000139', apn_username='', groups=[1,2,3])
      progress['user'] = True
      result += '添加molice成功'
    else:
      result += 'molice已存在'
    return HttpResponse(result)
  return HttpResponse('无权限')