问题是这样的:
我用Django写了一个注册登入的views。用户是可以创建,但是不能保存登入状态。代码如下:
def register(request, template='users/register.html', mimetype=None):
if request.method=='POST':
email = request.POST.get('email')
username = request.POST.get('username')
password = request.POST.get('password')
user = User(email=email, username=username,password=password)
user.save()
user=authenticate(username=username, password=password)
print '########:%s' % user.is_active
if user is not None and user.is_active:
# Correct password, and the user is marked "active"
print '########:%s' % user
login(request, user)
# Redirect to a success page.
return HttpResponseRedirect("/home/")
return HttpResponse('not login')
return render_to_response(template, mimetype=mimetype, context_instance=RequestContext(request))
user=authenticate(username=username, password=password)
这一步当中,authenticate返回的是一个None,所以执行不到:
login(request, user)
这一步。
这是怎么回事呢?
相关推荐
在Django框架中,有两种主要方法可以实现这一功能:Django Session和Cookie。理解这两者的工作原理和如何在Django中使用它们至关重要。 首先,让我们深入了解Cookie。Cookie是由服务器发送到用户浏览器的一小段数据...
### Django Session 完成状态保持的方法 #### 一、引言 HTTP 协议作为互联网上应用最为广泛的一种网络协议,其本质特点是无状态的。这意味着每次客户端与服务器之间的交互都是独立的,服务器不会保留任何关于之前的...
《Python库 Django-session-idle-timeout的深度解析》 在Python的世界里,Django作为一款强大的Web框架,因其高效、易用和丰富的功能而备受开发者喜爱。而在Django的生态系统中,有一个名为`django-session-idle-...
"Oldboy 3"可能是某种教学系列或者课程的第三部分,专门讲解Django ORM和session的使用。 "django_orm"是Django中的一个重要组成部分,它实现了ORM系统。ORM使得开发者可以将数据库操作与业务逻辑分离,通过Python...
在本文中,我们将深入探讨Django框架中的两个关键概念:Session和分页,并通过实例来讲解它们的使用方法。 首先,我们来看Django的Session机制。Session是服务器端存储用户状态的一种方式,与Cookie相比,它提供了...
Django的Session机制是Web开发中用于管理用户会话的关键技术。它允许开发者在服务器端存储用户的状态信息,比如登录状态、购物车等,而这些信息不会随着HTTP请求的无状态性丢失。以下是对Django操作Session的详细...
综上所述,解决`no such table: django_session`问题的关键在于正确地迁移数据库,并确保数据库配置和版本与Django框架兼容。遵循上述步骤,你应该能够成功地修复这个问题并继续使用Django的session功能。
然而,Cookie的大小有限,且存在安全性问题,因此对于存储敏感信息,比如用户身份验证信息,通常会使用Session。Session是一种在服务器端保持状态的技术,它为每个客户端分配一个唯一的Session ID,这个ID通过Cookie...
Django作为一款流行的Python Web框架,提供了一套内建的Session框架来帮助开发者实现用户的登录保持。Session框架在用户登录后在服务器端生成一个唯一的会话标识(session key),然后将其作为cookie存储在用户的...
注意jquery.js的路径和名字! 博文链接:https://zhougaomin-007.iteye.com/blog/148047
Django会话清理对于使用cached_db或db会话引擎的项目,一段时间后django_session表可能会变得很大。 Django提供了“ cleanup”管理命令,用于从此表中删除过期的会话,但是您必须手动运行此命令或设置cron作业。 ...
session_data = DjangoSession.objects.filter(session_key=key).values_list('session_data')[0][0] # 删除key不为当前key,session_data等于当前session_data的session记录 DjangoSession.objects.filter(session...
为了解决这个问题,Django提供了Session机制来维护用户的状态。 **Session的工作原理**: 1. **创建Session ID**:当用户第一次访问应用时,服务器会生成一个唯一的Session ID,并将其存储在客户端的Cookie中。 2. ...
在Web开发中,Django框架提供了方便的cookie和session管理机制,用于解决HTTP协议无状态的问题。HTTP协议本身不支持会话跟踪,因此需要借助额外的技术,如cookie和session,来实现用户状态的维护。 一、HTTP协议无...
为了解决这个问题,引入了cookie和session的概念。 1. **Cookie的概念**:Cookie是一种存储在用户浏览器中的小型文本文件,它可以保存用户的偏好设置、登录信息或其他需要跨页面请求传递的信息。Cookie可以被服务器...
1. **原有系统的兼容性问题**:如果在现有系统基础上使用 Django 构建 Web 版本,原有的数据库结构可能无法直接支持 Django 的 Session 表结构。 2. **特定业务逻辑的需求**:某些业务场景下,需要对 Session 数据...
Django,一个流行的Python web框架,提供了一套完善的Session管理机制。本文将深入解析Django中的五种Session存储方式以及如何在实际应用中使用它们。 首先,理解Session的基本原理:当用户与Web应用程序交互时,...
session的超时时间设置 settings中 SESSION_COOKIE_AGE=60*30 30分钟。 SESSION_EXPIRE_AT_BROWSER_CLOSE False:会话cookie可以在用户浏览器中保持有效期。True:关闭浏览器,则Cookie失效。 SESSION_COOKIE_...