Django在settings.py设置安装软件路径,遇到 'Settings' object is not subscriptable报错

1、由于在搞一个导出pdf的功能时,需要指定下面的一个配置,代码如下:

config = pdfkit.configuration(wkhtmltopdf='D:\\SoftWare\\wkhtmltopdf\\bin\\wkhtmltopdf.exe')

2、但是项目成员里面每个人安装的目录都不一样,而且如果部署到linux环境底下,还不是exe格式的,路径也会变化,于是想到可以去settings.py设置一个安装目录,后面直接修改这个文件即可,在view那里直接引入settings底下这个安装目录就行了。

3、参考了网上一篇文章,首先,打开settings.py,直接加上一行代码为:

# wkhtmltopdf安装的路径
WKHTMLTOPDF_INSTALL_PATH = 'D:\\SoftWare\\wkhtmltopdf\\bin\\wkhtmltopdf.exe'

4、接着,去引用这个路径即可,于是有了下面两行代码:

from django.conf import settings

config = pdfkit.configuration(wkhtmltopdf=settings['WKHTMLTOPDF_INSTALL_PATH'])

5、结果,报了以下这个错误,这个错误代表settings这个对象不可订阅,感觉写法有点像取字典键对应的值:

'Settings' object is not subscriptable

6、修改代码如下即可成功引用:

from django.conf import settings

config = pdfkit.configuration(wkhtmltopdf=settings.WKHTMLTOPDF_INSTALL_PATH)

这样的话以后修改这个settings.py即可修改wkhtmltopdf所安装的路径了。

以上内容仅供大家学习参考,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值