django登录密码错误怎么返回(django退出登录)

如题所述

第1个回答  2024-09-19

今天给各位分享django登录密码错误怎么返回的知识,其中也会对django退出登录进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

1、当我用django的超级用户登录时候,出现CSRF的错误,如图,怎么解决啊??2、求教,django的数据库错误的解决方法3、我照写django怎么出错4、在Django视图中我判断登陆页面,密码错误我弾出消息框,但是为什么不返回登陆页面了当我用django的超级用户登录时候,出现CSRF的错误,如图,怎么解决啊??

需要在form后面加上csrf_token。如:

form method="post"{% csrf_token %}

xxx

/form

或者修改django源码:django/middleware/csrf.py process_view

在“# If the user doesn't have a CSRF cookie”上面增加以下代码:

if request.path.startswith('/admin'):

return accept()

如果django版本为1.2.5,则修改为:

if request.path.startswith('/admin'):

return self._accept(request)

这表示 请求url是/admin的话,即使form后面没带csrf_token也可以访问。

求教,django的数据库错误的解决方法

错误代码 1045

Access denied for user 'root'@'localhost'

(using password:YES)

如果你的mysql也出现以上这种提示,

建议你逐个字看完我这篇文章再按以下方法来尝试解决问题.

这是mysql数据库很多时候出现的问题, 网上流传很多解决办法. 有人按照那些方法, 还真可以把问题解决了; 但也有很多人按那些方法解决不了问题!

而这个中原因, 就是没有对症下药!!!

网上的那些方法, 很多都没有明确指出是什么版本的mysql, 所以导致问题者不能对症下药.

出现这个问题, 通过停止/重启 mysql 服务, 是可以解决的, 这个是最简单的办法! 对于不懂得什么叫做"停止/重启mysql服务"的人来说,

这个最简单的办法就是把服务器主机进行重新启动(就是把你的电脑进行重新启动).

以上是方法A! (这个方法适合任何版本的mysql)

以下是方法B:(方法仅适用于MySQL4.0.26 版本!!! (我估计,

4.0的其他版本应该也可以的))

网上也有说, 就是对root进行重改密码. 对于网上流传的改密码方法, 也是可行的. 请参考以下:

DOS下修改ROOT密码:当然后面安装PHPMYADMIN后修改密码也可以通过PHPMYADMIN修改

格式:mysqladmin -u用户名 -p旧密码 password

新密码

例:给root加个密码ideacmblog

首先在进入CMD命令行,转到MYSQL目录下的bin目录,然后键入以下命令

mysqladmin

-uroot password ideacmblog

注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。

D:\php\MySQL\binmysqladmin -uroot password

ideacmblog回车后ROOT密码就设置为ideacmblog了

但是, 请注意了, 以上方法仅适用于MySQL4.0.26

版本!!! (我估计, 4.0的其他版本应该也可以的)

方法C:

好了, 扯了那么多, 以上的两个方法都不是我本人测试过的, 本人不对真实性负责!

而现在我说一下本人亲自试过的方法, 以供参考:

话说今天, 我的服务器所有php及使用了mysql数据库的网站, 均挂掉了! 无法打开,

并有以下提示:

错误代码 1045

Access denied for

user 'root'@'localhost' (using password:YES)

一开始我也是不断搜索google(我本人不喜欢百度!),

去找寻解决的办法. 看了很多, 也参照执行了, 事实上也是解决不了问题. 后来我想到了是版本的问题, 不同的mysql版本

我的mysql版本是: 5.0.22

(mysql-essential-5.0.22-win32)

今天一整天, 那些php网站均罢工. 到今晚才有时间上去服务器继续寻找方法, 但仍然解决不了.

最后, 我决定把mysql卸掉重新安装!

卸载很快, 而且不需要重新启动计算机.

于是, 继续进行安装.

第一步:

打开这个mysql-essential-5.0.22-win32.exe文件;

第二步: 见到窗口弹出, 并点击 Next

进入下一步;

第三步: 选择 Custom 项, 并点击

Next 进入下一步;

第四步: 到这一步要注意了, 点击

Change... 选择你原安装mysql的目录; 选择后, 继续点击Next 进入下一步;

第五步: 点击 Install

进行安装

安装至下一步, 会提示你进行注册, 选择最后一项, 即跳过注册,

进入下一步正式完成安装.

安装完成后, 继续弹出一个窗口, 提示你是不是立刻进行配置,

选择 Next

选择Standard Configuration.继续点击

Next 进入下一步

这一步里, 把上面那行的勾去掉, 只在 Include

....PATH 那行打勾, 继续点击 Next 进入下一步

在这一步, 点击中间的"Ex****"那顶,

接着配置完毕!

我照写django怎么出错

一、模板类型错误:

错误原因:在models中漏掉了return:

class UserProfile(models.Model):

"""

功能说明:扩展用户

---------------------------------------------------------------------------

修改人修改时间修改原因

------------------------------------------------------------------------------

BeginMan2013-05-05

"""

user=models.OneToOneField(User,blank=True,null=True,related_name='user',verbose_name=_(u'用户'))

company_name=models.CharField(u'企业(或代理商)名称',max_length=30, default='未知') #企业商名称

product=models.ForeignKey(Product, blank=True,null=True,verbose_name=_(u'产品'))#产品

class Meta:

verbose_name = _(u'配置')

verbose_name_plural = _(u'用户配置')

def __unicode__(self):

【这里】_(u'%(user_name)s') % {'user_name':self.user.username}

这里加上return即可。

二、url相关错误

、静态文件无法访问,如样式出不来

css样式总出不来,折腾了一个多小时,原来,urlpatterns 写成这样:

urlpatterns = patterns('',

(r'^ $','login.msg.index'),#首页

)

#登录注册

urlpatterns = patterns('',

(r'^accounts/register/$','login.msg.register_page'), #注册

(r'^accounts/login/$','login.msg.login'),#登录

(r'^accounts/logout/$','django.contrib.auth.views.logout',{'next_page':'/'}),#Django提供一个专用于处理登出表单函数logout

(r'^accounts/register/success/$','django.views.generic.simple.direct_to_template',{'template':'registration/register_success.html'}),#注册成功

)

#admin后台管理

urlpatterns += patterns('',

(r'^admin/doc/', include('django.contrib.admindocs.urls')),

(r'^admin/', include(admin.site.urls)),

)

#静态文件的访问

urlpatterns += patterns('',

(r'^site_media/(?Ppath.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_SITE}),

(r'^upload_media/(?Ppath.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),

)

我把 [登录注册] url后面也写成 = 而并非+= ,这就造成了url覆盖,所以就加载不了静态文件,同时首页也会打不开。

三、编码错误

、错误类型如下:

DjangoUnicodeDecodeError at /admin/books/book/

'ascii' codec can't decode byte 0xe8 in position 0: ordinal not in range(128). You passed in Book: [Bad Unicode data] (class 'books.models.Book')

解决方案:

混淆了 python2 里边的 str 和 unicode 数据类型。

(0)、你需要的是让编码用实际编码而不是 ascii

(1)、对需要 str-unicode 的代码,可以在前边写上

import sys

reload(sys)

sys.setdefaultencoding('utf8')

把 str 编码由 ascii 改为 utf8 (或 gb18030)

(2)、python3 区分了 unicode str 和 byte arrary,并且默认编码不再是 ascii

参考:

四、其他错误

、Django POST请求错误forbidden(403) CSRF verification failed. Request aborted

在 settings.py 中的

MIDDLEWARE_CLASSES 设置下 添加

'django.middleware.csrf.CsrfResponseMiddleware',

重新 runserver. OK

重点参考:

我用的是django1.2.3,当使用session时,也会像上面出错,这时把下面注释掉即可:

#'django.middleware.csrf.CsrfViewMiddleware', #这段代码理应注释掉,在使用session的时候

、login:login() takes exactly 1 argument (2 given)

这在登录视图函数的时候特别常见,原因就是函数login与login模块的名字冲突,如登录url这样写:

(r'^account/login/$', 'login'),#登录

那么,对应的视图函数如下:

def login(request):

"""

功能说明:登 录

------------------------------------------------------------

开发者 修改时间 修改原因

------------------------------------------------------------

beginman2013-06-05

"""

if request.method == "POST":

try:

username = request.POST.get('username')

password = request.POST.get('password')

user = authenticate(username=username,password=password)

if user is not None:

if user.is_active:

login(request,user)

return HttpResponse('ok')

else:

return HttpResponse('error')

except Exception,e:

log.error("login:%s" % str(e))

return render_to_response('account/login.html')

当然如果这样写,不要忘记导入:

from django.contrib.auth import authenticate, login

这样就坏事了,因为出现了两个login.这就导致了上面的问题,解决办法有两个,

、修改login视图函数的名称和对应的url中。如webLogin

、导入设置:from ..login as _login 这样也行,别忘了都要改过来。

、无法跳转

如,我想登录。然后登录成功后跳转到主页,如上:把上面代码改写成这样

.....

if user.is_active:

login(request,user)

return HttpResponseRedirect('/')

....

但是却没有实现跳转,如下:

这里并不是跳转写错了,而是没有注意到我这个登录界面是ajax POST形式的,代码如下:

//登录

function _submit(){

var username = $("input[name='username']").val();

var password = $("input[name='password']").val();

if (username == ""){

art.dialog({content: '用户名不能为空',time :1.5});

}else if(password == ""){

art.dialog({content: '密码不能为空',time :1.5});

}else{

$.post('/account/login/',{'username':username,'password':password},function(data){

if (data =='error'){

art.dialog({content: '用户名或密码错误',time :1.5});

}

});

}

}

Query.post( url, [data], [callback], [type] ) :

如果返回,它只返回一个字符串。所以并不能在后台跳转。

解决方法是: return HttpResponse('ok'),通过接受返回的Ok 来在前台实现跳转。

在Django视图中我判断登陆页面,密码错误我弾出消息框,但是为什么不返回登陆页面了

return response这句已经返回了,下面那句没有用了。 另外,你那两句response.write也不对,只是写script不会执行。

django登录密码错误怎么返回的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于django退出登录、django登录密码错误怎么返回的信息别忘了在本站进行查找喔。

logo设计

创造品牌价值

¥500元起

APP开发

量身定制,源码交付

¥2000元起

商标注册

一个好品牌从商标开始

¥1480元起

公司注册

注册公司全程代办

¥0元起

    官方电话官方服务
      官方网站八戒财税知识产权八戒服务商企业需求数字市场
相似回答
大家正在搜