duanguolei / doubanbook

django豆瓣图书可视化管理系统,具有搜索,查看,分类,评论,评分后台图书管理,可视化等功能,
8 stars 0 forks source link

ModuleNotFoundError: No module named 'doubanbook' #2

Open Niko-Laputa opened 1 month ago

Niko-Laputa commented 1 month ago

linux系统版本为:Linux *** 5.15.0-113-generic #123-Ubuntu SMP Mon Jun 10 08:16:17 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux,使用的是阿里云的云服务器 Python版本为: Python 3.10.12

在执行 python book/scripts/init_manage_user.py后出现如下错误:

Traceback (most recent call last): File "/home/niko/test/book/scripts/init_manage_user.py", line 8, in import init File "/home/niko/test/book/scripts/init.py", line 15, in django.setup() File "/home/niko/.local/lib/python3.10/site-packages/django/init.py", line 19, in setup configure_logging(settings.LOGGING_CONFIG, settings.LOGGING) File "/home/niko/.local/lib/python3.10/site-packages/django/conf/init.py", line 89, in getattr self._setup(name) File "/home/niko/.local/lib/python3.10/site-packages/django/conf/init.py", line 76, in _setup self._wrapped = Settings(settings_module) File "/home/niko/.local/lib/python3.10/site-packages/django/conf/init.py", line 190, in init mod = importlib.import_module(self.SETTINGS_MODULE) File "/usr/lib/python3.10/importlib/init.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) ModuleNotFoundError: No module named 'doubanbook'

执行python -m django --version显示django的版本为:5.0.3,说明并不是django版本不对导致的错位。 大佬知道是什么原因导致的吗?

Niko-Laputa commented 1 month ago

找到原因了,是在scripts/init.py中的

basr_dir=os.path.dirname(os.path.dirname(os.path.abspath(file))) import sys sys.path.append(basr_dir)

没有配置正确,导致项目模组没有位于python的sys.path中,从而在执行时提示没有此模组。官方文档中有简略的介绍:https://docs.djangoproject.com/zh-hans/5.0/topics/settings/#designating-the-settings。 我在这里是直接将sys.path.append()中添加上项目在我电脑上所在的绝对目录,这样python就能找到项目所在的模组了。

Niko-Laputa commented 1 month ago

我还想问一下scripts中的其他脚本是大佬自用的,还是我们这些重新搭建的人也可以使用的?如果我们可以使用的话该如何使用。 还有就是这个项目在哪里用到了redis。我之前没有接触过redis,所以在部署时没有下载它。但项目也可以正常运行。

最后谢谢大佬的开源贡献,我以后也要成为向大佬这样的开源大神。