Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django can';在Linux中找不到我的型号,但在Windows中可以找到_Python_Linux_Django - Fatal编程技术网

Python Django can';在Linux中找不到我的型号,但在Windows中可以找到

Python Django can';在Linux中找不到我的型号,但在Windows中可以找到,python,linux,django,Python,Linux,Django,我对Django还是有点不熟悉,所以请原谅可能的基本问题 我试图部署一个Django项目,但我遇到了一些问题 该项目在Windows上的工作方式完全相同,但我在Ubuntu VPS上遇到了以下错误: Unhandled exception in thread started by <function wrapper at [...]> Traceback (most recent call last): [...] Stack trace from system/django fi

我对Django还是有点不熟悉,所以请原谅可能的基本问题

我试图部署一个Django项目,但我遇到了一些问题

该项目在Windows上的工作方式完全相同,但我在Ubuntu VPS上遇到了以下错误:

Unhandled exception in thread started by <function wrapper at [...]>
Traceback (most recent call last):

[...]
Stack trace from system/django files

File "/home/django/[Project Name]/apps/sale/admin.py", line 8, in <module>
    from .forms import SaleRequestFormAdmin
File "/home/django/[Project Name]/apps/sale/forms.py", line 6, in <module>
    from apps.listing.models import Listing
ImportError: No module named listing.models
apps
文件夹包含所有my Django应用程序,与
manage.py
和my project文件夹位于同一文件夹中

您可以在
列表
应用程序中看到一个名为
models.py
的文件

有人知道为什么这在Linux上不起作用吗?我在谷歌上找不到任何相关信息,我真的不知道它为什么会失败


任何帮助都将不胜感激。

我认为问题在于
应用程序
路径不在您的
系统
路径中

尝试在settings.py文件中添加以下内容:

import os
import sys

PROJECT_ROOT = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(PROJECT_ROOT, 'apps'))

如果有帮助,请告诉我

您是否已将列表添加到settings.py文件中的已安装应用程序设置中?我已将列表添加到settings.py文件中的APPS.listing。它是在settings文件中还是在其中一个应用程序文件中?在您的情况下,PROJECT\u ROOT的值是多少?
/home/django/[PROJECT Name]/[PROJECT Folder]/设置
My settings(我的设置)文件位于它自己的文件夹中,设置了_init__uuu以根据环境导入正确的文件。在这种情况下,我认为您应该使用BASE_DIR。syspath应该有你的apps文件夹的路径,我会工作的。我个人使用我的django应用程序的apps文件夹,我使用这种方法
import os
import sys

PROJECT_ROOT = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(PROJECT_ROOT, 'apps'))