2016-08-17 5 views
0

Django 첫 번째 웹 사이트를 개발 중입니다. (Django 자습서로 탱고를 기반으로 함) Debug = False 일 때 정적 파일 제공 문제가 발생합니다. 지금ImportError : python manage.py collectstatic 일 때 설정을 가져올 수 없습니다.

import os 
import uwsgi 
from uwsgidecorators import timer 
from django.utils import autoreload 

BASE_DIR = os.path.dirname(os.path.dirname(__file__)) 

(...) 

ROOT_URLCONF = 'tango_with_django_project.urls' 

STATIC_ROOT = os.path.join(BASE_DIR, 'static') 

STATIC_URL = '/static/' 

STATICFILES_DIRS = (
    STATIC_ROOT, 
) 

MEDIA_URL = '/media/' 
MEDIA_ROOT = os.path.join(BASE_DIR, 'static') 

하고 다음과 같이

|___401.shtml 
|___500.shtml 
|___requirements.txt 
|___400.shtml 
|___populate_rango.py 
|___manage.py 
|___templates 
| |___rango 
| | |___index.html 
| | |___category.html 
| | |___cats.html 
| | |___category_list.html 
| | |___add_category.html 
| | |___base.html 
| | |___register.html 
| | |___restricted.html 
| | |___about.html 
| | |___login.html 
| | |___add_page.html 
| |___registration 
| | |___logout.html 
| | |___registration_complete.html 
| | |___registration_form.html 
| | |___login.html 
|___media 
| |___photo.png 
| |___.htaccess 
| |___profile_images 
| | |___Screenshot_from_2016-07-18_145936.png 
| | |___Screenshot_from_2016-07-21_112910.png 
|___cgi-bin 
| |___.htaccess 
|___rango 
| |___admin.py 
| |___migrations 
| | |___0003_category_slug.py 
| | |_____init__.pyc 
| | |___0003_category_slug.pyc 
| | |___0001_initial.pyc 
| | |___0001_initial.py 
| | |___0004_userprofile.pyc 
| | |___0002_auto_20160804_1857.py 
| | |___0002_auto_20160804_1857.pyc 
| | |___0004_userprofile.py 
| | |_____init__.py 
| |___models.py 
| |___tests.py 
| |_____init__.pyc 
| |___models.pyc 
| |___templatetags 
| | |_____init__.pyc 
| | |___rango_extras.pyc 
| | |___rango_extras.py 
| | |_____init__.py 
| |___forms.py 
| |___views.pyc 
| |___urls.py 
| |___admin.pyc 
| |___views.py 
| |___urls.pyc 
| |___forms.pyc 
| |_____init__.py 
|___tango_with_django_project 
| |___settings.pyc 
| |___wsgi.pyc 
| |_____init__.pyc 
| |___urls.py 
| |___settings.py 
| |___urls.pyc 
| |___wsgi.py 
| |_____init__.py 
|___static 
| |___images 
| | |___photo.png 
| | |___rango.png 
| |___.htaccess 
| |___js 
| | |___rango-jquery.js 
| | |___jquery.js 
| | |___rango-ajax.js 
|___db.sqlite3 
|___test.py 
|___404.shtml 
|___403.shtml 

내가 settings.py 경로에 STATIC_ROOT 추가 : 는

내 폴더 구조는 다음과 같습니다 (내가 있었을 때 디버그 사실 모든 것이 잘 작동 =) 나는 ssh 터미널에서 달리고 싶다

python manage.py collectstatic 

그러나 나는 직면하고있다. 오류

Traceback (most recent call last): 
    File "manage.py", line 13, in <module> 
    execute_from_command_line(sys.argv) 
    File "/home/mrklap/venv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line 
    utility.execute() 
    File "/home/mrklap/venv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 345, in execute 
    settings.INSTALLED_APPS 
    File "/home/mrklap/venv/local/lib/python2.7/site-packages/django/conf/__init__.py", line 46, in __getattr__ 
    self._setup(name) 
    File "/home/mrklap/venv/local/lib/python2.7/site-packages/django/conf/__init__.py", line 42, in _setup 
    self._wrapped = Settings(settings_module) 
    File "/home/mrklap/venv/local/lib/python2.7/site-packages/django/conf/__init__.py", line 98, in __init__ 
    % (self.SETTINGS_MODULE, e) 
ImportError: Could not import settings 'tango_with_django_project.settings' (Is it on sys.path? Is there an import error in the settings file?): No module named uwsgi 

난 게시물을 읽고 여기에 대답 schwärzl :

ImportError: Could not import settings

수정 wsgi.py 파일에 :

import os 
import sys 
sys.path.append('home/mrklap/domains/tredo.net/public_html/tango_with_django_project') 
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "tango_with_django_project.settings") 

from django.core.wsgi import get_wsgi_application 
application = get_wsgi_application() 

하지만 여전히 난에서 오전 때 (또는 축소) ssh의 virtualenv를 실행하여 실행하십시오 :

>>> import sys 
>>> for path in sys.path: print path 
012 3,516,

... 난 아래 목록에서 해당 경로를 볼 수없는 이유는 무엇 경로

/home/mrklap/venv/lib/python2.7 
/home/mrklap/venv/lib/python2.7/plat-x86_64-linux-gnu 
/home/mrklap/venv/lib/python2.7/lib-tk 
/home/mrklap/venv/lib/python2.7/lib-old 
/home/mrklap/venv/lib/python2.7/lib-dynload 
/usr/lib/python2.7 
/usr/lib/python2.7/plat-x86_64-linux-gnu 
/usr/lib/python2.7/lib-tk 
/home/mrklap/venv/local/lib/python2.7/site-packages 
/home/mrklap/venv/lib/python2.7/site-packages 
>>> 

추가하기 있지 않다

?

+0

파일. – Alasdair

+0

'collectstatic' 명령은'STATICFILES_DIRS'에있는 파일들을 수집하고 그것들을 제공하는'STATIC_ROOT'에 복사합니다. 그러므로'STATIC_ROOT'을'STATICFILES_DIRS' 설정에 포함시키는 것은 의미가 없습니다. – Alasdair

+0

Alasdair, 도움을 주셔서 감사합니다. 그러나 uwsgi가 설치되어있는 것을 볼 수 있습니다. (가상 환경에 설치되어있을 때)'(venv) [mrklap @ s34 :: ~/domains/tredo.net/public_html] : $ pip freeze Django = = 1.7 django-bootstrap-too lkit == 2.15.0 django-registration-redux == 1.4 베개 == 3.3.0 uWSGI == 2.0.13.1' 다른 아이디어가 있습니까? – Reven

답변

2

는`uwsgi`를 설치하지 않은 것처럼 보이는, 당신은 설정에서이 가져온로 sudo pip install uwsgi 을 시도 오류 '없음 모듈 이름 uwsgi'을 보면

+0

Alasdair, Aamish, 도움을 주셔서 감사합니다. 그러나 (가상 환경에있을 때 uwsgi가 설치되어 있습니다.)'(venv) [mrklap @ s34 :: ~/domains/tredo.net/public_html] : $ pip freeze Django = = 1.7 장고 - 부트 스트랩 - 툴킷 == 2.15.0 장고 등록-REDUX == 1.4 베개 == 3.3.0 uWSGI의 == 2.0.13.1 '당신이 다른 생각을해야합니까? – Reven

+0

venv를 올바르게 활성화하셨습니까? –

+0

'source ~/venv/bin/activate'에 의해 활성화되고 있습니까? 맞습니까? – Reven

관련 문제