def setUp(self): # create a WSGI application. app = webapp2.WSGIApplication(config=config.webapp2_config) routes.add_routes(app) self.testapp = webtest.TestApp( app, extra_environ={'REMOTE_ADDR': '127.0.0.1'}) # activate GAE stubs self.testbed = testbed.Testbed() self.testbed.activate() self.testbed.init_datastore_v3_stub() self.testbed.init_memcache_stub() self.testbed.init_urlfetch_stub() # some shortcuts self.cookie_name = config.webapp2_config['webapp2_extras.auth'][ 'cookie_name'] self.headers = {'User-Agent': 'Safari', 'Accept-Language': 'en_US'} # register test account self.testapp.post('/register/', forms.RegisterForm(username='******', password='******', c_password='******', email='*****@*****.**', country='').data, headers=self.headers) # is test account created? users = models.User.query().fetch(2) self.assertEqual(1, len(users), 'testuser could not register') self.user = users[0] # clear cookies self.testapp.reset()
def register1(request): """ 注册 :param request: :return: """ ret = {"status": False, "error": None, "data": None} if request.method == "GET": register_obj = forms.RegisterForm() return render(request, 'register.html', {"register_obj": register_obj}) elif request.method == "POST": register_obj = forms.RegisterForm(request.POST) if register_obj.is_valid(): ret["status"] = True ret["data"] = register_obj.cleaned_data else: ret["error"] = register_obj.errors.as_data() # print(type(register_obj.errors.as_json())) # print(type(register_obj.errors.as_data())) result = json.dumps(ret, cls=JsonCunstomEncode) #不能使用render,使用render返回数据,前端var data1=JSON.parse(arg)转换报错。可以使用HttpResponse直接返回数据 #return render(request, 'register.html',{"result":result}) return HttpResponse(result)
def register(request): """ 注册 :param request: :return: """ ret = {"status": False, "error": None, "data": None} if request.method == "GET": register_obj = forms.RegisterForm() return render(request, 'register.html', {"register_obj": register_obj}) elif request.method == "POST": register_obj = forms.RegisterForm(request.POST) if register_obj.is_valid(): reverse_url = reverse("register") if request.session['CheckCode'].lower() == request.POST.get( 'check_code').lower(): username = register_obj.cleaned_data.get("username") email = register_obj.cleaned_data.get("email") password = register_obj.cleaned_data.get("password") user_obj = models.UserInfo.objects.create(username=username, email=email, password=password) if user_obj: request.session.clear() request.session["username"] = username request.session["is_login"] = True ret["status"] = True ret["data"] = register_obj.cleaned_data #成功js跳转到base_info.html else: ret["error"] = register_obj.errors.as_json() result = json.dumps(ret) #不能使用render,使用render返回数据,前端var data1=JSON.parse(arg)转换报错。可以使用HttpResponse直接返回数据 #return render(request, 'register.html',{"result":result}) return HttpResponse(result)
def form(self): if self.is_mobile: return forms.RegisterMobileForm(self) else: return forms.RegisterForm(self)
def form(self): return forms.RegisterForm(self)
def form(self): if self.is_mobile: return forms.RegisterMobileForm(self.request.POST) else: return forms.RegisterForm(self.request.POST)