模块'qrcode'没有属性'make'



在集成python库qrcode==6.1和django==3.1.2时。我一直在尝试生成一个二维码,其中包含我其他网站的URL链接。

型号.py

from django.db import models
import qrcode
from io import BytesIO
from django.core.files import File
from PIL import Image, ImageDraw
# Create your models here.
class Website(models.Model):
name = models.CharField(max_length=200)
qr_code = models.ImageField(upload_to='qr_codes', blank=True)
def __str__(self):
return str(self.name)

def save(self, *args, **kwargs):
qrcode_img = qrcode.make(self.name)
canvas = Image.new('RGB', (290,290), 'white')
draw = ImageDraw.Draw(canvas)
canvas.paste(qrcode_img)
fname = f'qr_code_{self.name}.png'
buffer = BytesIO()
canvas.save(buffer,'PNG')
self.qr_code.save(fname, File(buffer), save=False)
canvas.close()
super().save(*args, **kwargs)

但它总是显示一个错误,指出模块"qrcode"不包含任何名为"make(("的属性。我想知道如何解决这个问题?

确保models.py所在的目录中没有任何名为qrcode.py的文件。

查看更多信息https://github.com/lincolnloop/python-qrcode/issues/185

面临着同样的问题,即使没有名为"qrcode.py"的文件。经过多次尝试,我终于找到了在我的项目中安装了多个qrcode的解决方案。只需卸载所有qrcode,只重新安装一个"qrcode==6.1",问题就解决了。。。

@Abhigyan Jaiswal的回应很到位,对我来说确实有效。

我试图将qrcode作为一个模块导入,而我的脚本也被命名为qrcode.py。我只是简单地将qrcode.py重命名为qrcodegen.py,它就起了作用。

pip uninstall qrcode
pip install qrcode==6.1

相关内容

  • 没有找到相关文章

最新更新