最近在写一个CMDB的项目,遇到drf与django版本问题...
AttributeError at /
module 'markdown' has no attribute 'version'
Request Method: GET
Request URL: http://127.0.0.1:8000/
Django Version: 2.1.1
Exception Type: AttributeError
Exception Value:
module 'markdown' has no attribute 'version'
Exception Location: D:\Code\Python\AutoCMDBViewer\venv\lib\site-packages\rest_framework\compat.py in <module>, line 161
Python Executable: D:\Code\Python\AutoCMDBViewer\venv\Scripts\python.exe
Python Version: 3.6.5
Python Path:
['D:\\Code\\Python\\AutoCMDBViewer',
'D:\\Code\\Python\\AutoCMDBViewer',
'D:\\Code\\Python\\AutoCMDBViewer\\venv\\Scripts\\python36.zip',
'C:\\ProgramData\\Anaconda3\\DLLs',
'C:\\ProgramData\\Anaconda3\\lib',
'C:\\ProgramData\\Anaconda3',
'D:\\Code\\Python\\AutoCMDBViewer\\venv',
'D:\\Code\\Python\\AutoCMDBViewer\\venv\\lib\\site-packages',
'D:\\Code\\Python\\AutoCMDBViewer\\venv\\lib\\site-packages\\setuptools-39.1.0-py3.6.egg',
'D:\\Code\\Python\\AutoCMDBViewer\\venv\\lib\\site-packages\\pip-10.0.1-py3.6.egg',
'C:\\Apps\\PyCharm\\helpers\\pycharm_matplotlib_backend']
(venv) D:\Code\Python\AutoCMDBViewer>pip freeze
asn1crypto==0.24.0
cffi==1.11.5
cryptography==2.3.1
Django==2.1.1
django-filter==2.0.0
djangorestframework==3.8.2
idna==2.7
Markdown==3.0
pycparser==2.18
PyMySQL==0.9.2
pytz==2018.5
six==1.11.0
打开drf源码目录下的 compat.py
文件,我的路径是: D:\Code\Python\AutoCMDBViewer\venv\Lib\site-packages\rest_framework\compat.py
定位到157行代码进行修改:
try:
import markdown
if markdown.__version__ <= '2.2': # 将version修改为__version__即可
HEADERID_EXT_PATH = 'headerid'
LEVEL_PARAM = 'level'
elif markdown.__version__ < '2.6': # 将version修改为__version__即可
HEADERID_EXT_PATH = 'markdown.extensions.headerid'
LEVEL_PARAM = 'level'
else:
HEADERID_EXT_PATH = 'markdown.extensions.toc'
LEVEL_PARAM = 'baselevel'
def apply_markdown(text):
"""
Simple wrapper around :func:`markdown.markdown` to set the base level
of '#' style headers to <h3>.
"""
extensions = [HEADERID_EXT_PATH]
extension_configs = {
HEADERID_EXT_PATH: {
LEVEL_PARAM: '2'
}
}
md = markdown.Markdown(
extensions=extensions, extension_configs=extension_configs
)
md_filter_add_syntax_highlight(md)
return md.convert(text)
except ImportError:
apply_markdown = None
markdown = None
另外有需要云服务器可以了解下风纳云fengnayun.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
© 2022-2023 Fengnayun.com 版权所有 | 沪ICP备2022019637号-1 | 51LA统计
增值电信业务经营许可证:B1-20223846 | 黔作登字-2022-F-00488892
代理域名注册服务机构:成都西维数码科技有限公司 | 部分地域产品合作单位:云南悍铭科技有限公司