配置Sass文件后Django启动报Eshopcompressor模块缺失错误
问题根因
ModuleNotFoundError: No module named 'Eshopcompressor' 报错是配置Sass支持时的书写错误导致:你把自定义应用Eshop和需要引入的静态资源压缩依赖名错误拼接成了Eshopcompressor,Python环境里不存在这个名称的模块或本地应用。
修复步骤
- 打开项目的
settings.py文件,找到INSTALLED_APPS配置段,直接删除值为'Eshopcompressor'的错误条目。 - 激活项目使用的虚拟环境,安装处理Sass所需的正确依赖:
# 安装静态资源压缩核心包 pip install django-compressor # 安装Sass编译处理依赖 pip install django-sass-processor libsass - 在
INSTALLED_APPS中添加正确的应用注册项,注意不要和自定义的Eshop应用名混写:INSTALLED_APPS = [ # Django内置应用 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # 自定义应用 'Eshop', # 第三方Sass处理依赖 'compressor', 'sass_processor', ] - 在
settings.py中补全静态资源查找、Sass编译的对应配置:STATICFILES_FINDERS = [ 'django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'compressor.finders.CompressorFinder', ] # 指定Sass预编译器 COMPRESS_PRECOMPILERS = ( ('text/x-scss', 'django_libsass.SassCompiler'), ) - 全局搜索项目代码中所有
Eshopcompressor关键词,把误写的导包语句、路径引用全部修正,避免遗漏错误配置。
验证
修改完成后重启Django开发服务,模块找不到的报错就会消失。如果开发环境下Sass样式不生效,可以先执行python manage.py collectstatic收集静态资源后再刷新页面验证。
内容的提问来源于stack exchange,提问作者Khalyd
相关产品推荐
相关产品推荐

