Django在settings.py設定安裝軟體路徑,遇到 'Settings' object is not subscriptable報錯
阿新 • • 發佈:2019-02-06
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所安裝的路徑了。
以上內容僅供大家學習參考,謝謝!