2016-07-19 3 views
1

가상 환경을 사용하여 프로젝트를 개발하고 있습니다. python3 및 Django 1.9.7 사용하기
뷰를 여러 파일로 분할합니다. 아래는 트리 구조입니다. 내가 가상 환경 및 실행을 활성화하지 않으면장고보기 가상 환경에서 오류를 표시

File "/home/rana/DjangoProject/FirstChoice/MyFirstCar/MyFirstCarBackEnd/Views/__init__.py", line 1, in <module> 
    from VehicleView import * 
ImportError: No module named 'VehicleView' 

- 그것은 오류 아래에 나를 던져

from VehicleView import * 
from DashboardView import * 

내가 가상 환경을 활성화하고 코드를 실행하고 -

|-- urls.pyc 
`-- Views 
    |-- DashboardView.py 
    |-- DashboardView.pyc 
    |-- __init__.py 
    |-- __init__.pyc 
    |-- __pycache__ 
    | |-- DashboardView.cpython-34.pyc 
    | |-- __init__.cpython-34.pyc 
    | `-- VehicleView.cpython-34.pyc 
    |-- VehicleView.py 
    `-- VehicleView.pyc 

파일 __init__.py 내부 코드를 실행하면 오류없이 실행됩니다. 기본 django 버전 1.8.4 및 python 2.7.6

답변

2

__init__.py 로컬 가져 오기를 대신 사용하려고하면 가상 환경에서 python3을 사용하는 경우 문제가 될 수 있습니다. 뱀 케이스 규칙을 따라야 파이썬에서 파일 및 모듈 이름 게다가

from .VehicleView import * 
from .DashboardView import * 

만 클래스는 낙타 표기법을 사용해야합니다.

from .vehicle_view import * 
form .dashboard_view import * 
+0

로컬 가져 오기 란 무엇입니까? 다른 유형의 수입은 무엇입니까? – User42

+1

@ User42 "로컬 가져 오기"는 "같은 디렉터리에있는 파일에서 가져 오기"를 의미합니다. "가져 오는 중"은 현재 파일에있는 다른 파일의 코드를 포함하여 많은 파일을 복사하거나 붙여 넣지 않아도 사용할 수 있습니다. [여기] (https://en.wikibooks.org/wiki/A_Beginner%27s_Python_Tutorial/Importing_Modules)는 가져 오기 가능한 모듈을 작성하는 방법의 예이며 [여기] (https://docs.python.org/3/reference /import.html)은 가져 오기 시스템의 설명서입니다. –

관련 문제