2017-03-01 29 views
0

我對Django有點不熟悉,所以請原諒可能的基本問題。Django無法在Linux中找到我的模型,但可以在Windows中運行

我試圖部署一個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 
│ ├── [...] 
│ ├── listing 
│ │ ├── admin.py 
│ │ ├── api.py 
│ │ ├── apps.py 
│ │ ├── forms.py 
│ │ ├── __init__.py 
│ │ ├── migrations 
│ │ │ ├── [...] 
│ │ ├── models.py 
│ │ ├── tests.py 
│ │ └── views.py 
│ ├── sale 
│ │ ├── admin.py 
│ │ ├── api.py 
│ │ ├── apps.py 
│ │ ├── forms.py 
│ │ ├── __init__.py 
│ │ ├── migrations 
│ │ │ ├── [...] 
│ │ ├── models.py 
│ │ ├── tests.py 
│ │ └── views.py 
├── __init__.py 
├── [Project Name] 
│ ├── __init__.py 
│ ├── settings.py 
│ ├── urls.py 
│ └── wsgi.py 
├── manage.py 

apps文件夾包含所有我的Django的應用程序,並且是在同一個文件夾中manage.py和我的項目文件夾。

你可以看到有文件在listing應用程序稱爲models.py

有沒有人有任何想法爲什麼這不適用於Linux?我在Google上找不到任何相關信息,我真的不知道它爲什麼失敗。

任何幫助將不勝感激。

+0

您是否已將列表添加到settings.py文件中的INSTALLED_APPS設置中? –

+0

我有'apps.listing'。 – Richie378

回答

-1

我認爲這個問題是apps路徑是不是在你的sys路徑

嘗試增加你的settings.py文件如下:

import os 
import sys 

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

我們知道,如果有幫助!

+0

會在'settings.py'文件或其中一個應用程序文件中嗎?設置文件中的 – Richie378

+0

。 –

+0

它似乎沒有幫助。還是一樣的錯誤。 – Richie378

相關問題