Django使用自定义认证方式

Django使用自定义认证方式

创建登录应用

首先创建一个新的login app,用来存放认证用到代码

python manage.py startapp login

修改settings.py中的认证项

AUTHENTICATION_BACKENDS = (
    'login.auth.UsernamePasswordAuth',
)

自定义认证类

在login app下创建auth.py文件,内容如下

#coding:utf-8
from django.contrib.auth.models import User


class UsernamePasswordAuth(object):

    def authenticate(self, username=None, password=None):
        print("UsernamePasswordAuth.authenticate")
        try:
            user = User.objects.get(username__iexact=username)
            if user.check_password(password):
                return user
        except User.DoesNotExist:
            return None

    def get_user(self, user_id):
        print("UsernamePasswordAuth.get_user")
        try:
            user = User.objects.get(pk=user_id)
            return user
        except User.DoesNotExist:
            return None

转载请以链接形式标明本文地址
本文地址:http://blog.csdn.net/kongxx/article/details/50495086

出现"Unknown column 'product' in 'field list'"的错误提示是因为在数据库中找不到名为'product'的字段。这可能是由于以下几个原因引起的: 1. 数据库表中没有名为'product'的字段。请确保数据库表中存在名为'product'的字段,并且与实体类中的属性对应。 2. 在mybatis的xml文件中的某个sql语句中,引用了名为'product'的字段,但是数据库中没有对应的字段。 3. 数据库字段名中存在空格或回车字符,导致无法匹配到名为'product'的字段。 为了解决这个错误,您可以按照以下步骤进行检查和修复: 1. 确认数据库表中是否存在名为'product'的字段。如果不存在,请添加该字段到数据库表中。 2. 检查mybatis的xml文件中的sql语句,确保正确引用了名为'product'的字段。 3. 如果数据库字段名中存在空格或回车字符,请删除这些字符,使字段名与实体类中的属性对应。 4. 如果以上步骤都正确无误,那么可能是数据库连接有误。请确保数据库连接配置正确,并且能够连接到数据库。 希望以上信息对解决您遇到的问题有所帮助。如有更多疑问,请随时提问。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Unknown column ‘id‘ in ‘field list‘ 【排错·sql】](https://blog.csdn.net/m0_57050876/article/details/121624135)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [MYSQL:Unknown column '字段名' in 'field list' 错误](https://blog.csdn.net/m0_37648948/article/details/84839607)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值