小编Md *_*man的帖子

如何在“django-rest-framework-simplejwt”中使用`email`而不是`username`来生成令牌?

在Django的休息框架-simplejwt插件usernamepassword默认情况下使用。但我想使用email而不是username. 所以,我确实喜欢以下内容:

在序列化器中:

class MyTokenObtainSerializer(Serializer):
    username_field = User.EMAIL_FIELD

    def __init__(self, *args, **kwargs):
        super(MyTokenObtainSerializer, self).__init__(*args, **kwargs)

        self.fields[self.username_field] = CharField()
        self.fields['password'] = PasswordField()

    def validate(self, attrs):
        # self.user = authenticate(**{
        #     self.username_field: attrs[self.username_field],
        #     'password': attrs['password'],
        # })
        self.user = User.objects.filter(email=attrs[self.username_field]).first()
        print(self.user)

        if not self.user:
            raise ValidationError('The user is not valid.')

        if self.user:
            if not self.user.check_password(attrs['password']):
                raise ValidationError('Incorrect credentials.')
        print(self.user)
        # Prior to Django 1.10, inactive users could be authenticated with the
        # default …
Run Code Online (Sandbox Code Playgroud)

django django-rest-framework

11
推荐指数
3
解决办法
3324
查看次数

在Django ORM中,"值"和"注释"不适用于分组

我有这样一张桌子:

在此输入图像描述

现在我想总结每个日期的饭菜.我写了下面的代码.但它并不像我想的那样有效.

模型:

class Meal(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, default=1)
    date_of_meal = models.DateField()
    morning_meal = models.SmallIntegerField(default=0)
    mid_day_meal = models.SmallIntegerField(default=0)
    night_meal = models.SmallIntegerField(default=0)
    updated = models.DateTimeField(auto_now=True, auto_now_add=False)
    timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)

    class Meta:
        ordering = ['-updated', '-timestamp']

    def __str__(self):
        return str(self.date_of_meal)
Run Code Online (Sandbox Code Playgroud)

码:

meals_list = Meal.objects.values('date_of_meal').annotate(mm=Sum('morning_meal'), mdm=Sum('mid_day_meal'), nm=Sum('night_meal'))
Run Code Online (Sandbox Code Playgroud)

输出:

<QuerySet [{'mdm': 0, 'mm': 1, 'date_of_meal': datetime.date(2017, 3, 
23), 'nm':
 1}, {'mdm': 1, 'mm': 1, 'date_of_meal': datetime.date(2017, 3, 23), 'nm': 0}, {
'mdm': 1, 'mm': 0, 'date_of_meal': datetime.date(2017, 3, 22), 'nm': 1}, {'mdm':
 0, …
Run Code Online (Sandbox Code Playgroud)

python django django-orm python-3.x

8
推荐指数
1
解决办法
2028
查看次数

AttributeError:“ bytes”对象在Python中编码后没有属性“ find_all”

我收到以下错误。我已经在Google上进行了足够的搜索。但是没有什么可以解决我的问题。我的问题似乎与其他人不同。我正在使用BeautifulSoup

我认为以下几行引起了问题。

soup = BeautifulSoup(req.content, 'html.parser').encode("utf-8")
Run Code Online (Sandbox Code Playgroud)

当我试图找到所有div有一个holder课时:

data = soup.find_all("div", {"class":"holder"})
Run Code Online (Sandbox Code Playgroud)

如果显示以下错误:

追溯(最近一次通话最近):文件“ web_crawler.py”,第32行,数据= soup.find_all(“ div”,{“ class”:“ holder”}))AttributeError:'bytes'对象没有属性'find_all '

是在encoding制造问题吗?

python django beautifulsoup

1
推荐指数
1
解决办法
3921
查看次数

Security :: encrypt()方法在CakePHP 3.2中返回无效字符

Security在CakePHP 3.2中使用实用程序进行加密和解密.我打电话的时候

Security::encrypt('string', 'key') //密钥长度为32或更多

在字符串上的方法,它返回带有一些无效字符的加密字符串,如下所示:

8e88c050ff20cb12984bf1af24b11fc7ada198082c67d6b3da7170572d5bcd54plp21ķ;ܝ%N

我想用这个字符串url.但由于存在一些无效字符,因此无法正常工作.

现在我想避免这些角色.有没有办法避免这些角色?

php security encryption cakephp

0
推荐指数
1
解决办法
514
查看次数