def welcome_douban(request): api_operation = ApiOperation(key='default') results = None error_message = '' key = request.GET.get('oauth_token', '') if key: request_token = getRequestToken(key) if request_token: results = api_operation.getServiceFromRequest(request_token) if results: service, uid = results profile = UserData(uid).getProfile() if profile: try: new_user = User.objects.create_user(username = profile['uid'], password = profile['uid']) new_user.backend="%s.%s" %('django.contrib.auth.backends','ModelBackend') #以新用户登陆 auth.login(request, new_user) info = UserProfile(user=new_user) info.nickname = profile['nickname'] info.image_link = profile['image_link'] info.sign = profile['signature'] info.website = profile['website'] info.introduction = profile['introduction'] info.did = profile['uid'] try: info.save() except Exception, error: logger.debug(str(error)) #启动新用户的后台线程 完成推荐数据的初始化 InitData.initUserData(uid) #设置密码, 默认为用户名 user_form = UserChangeForm(instance=new_user) return render_to_response("accounts/settings.html", { 'msg':"请设置登录密码, 现在默认和用户名相同", 'user_form':user_form },context_instance=RequestContext(request)) except Exception, error: error_message = _("Sorry, we have a error when create new user: %s."%(error))