2013-12-13 6 views
0

컨트롤러에서 파이썬 스크립트를 트리거하려고합니다.RoP 앱 컨트롤러에서 Python 스크립트를 실행할 때 ConfigParser 오류가 발생했습니다.

내가 컨트롤러에서 follwing을 함수를 정의했습니다 :

private 
    def update_product_count(skus, qty) 
     system "python2 /home/nish/stuff/repos/Untitled/voylla_staging_changes/app/models/ReviseItem.py 
skus qty > output" 
    end 

이 동일한 컨트롤러의 다른 방법으로이 함수를 호출 :

def show 
//some code 
update_product_count(@skus, @qty) 
end 

내 콘솔에서 수동으로 스크립트를 실행, 잘 돌아갑니다.

Traceback (most recent call last): 
    File "/home/nish/stuff/repos/Untitled/voylla_staging_changes/app/models/ReviseItem.py", line 24, in <module> 
    devID = config.get("Keys", "Developer") 
    File "/usr/lib/python2.7/ConfigParser.py", line 607, in get 
    raise NoSectionError(section) 
ConfigParser.NoSectionError: No section: 'Keys' 
+0

"시스템으로 다시 작성하십시오"python2/home/nish/stuff/repos/제목 없음/voylla_staging_changes/app/models/ReviseItem.py # {skus} # {qty}> 출력 ". 그렇지 않으면 전달 된 실제 값 대신 문자열을 출력합니다. – nickcen

답변

0

가장 큰 원인은 당신이 상대 경로를 사용하여 설정 파일을 열고 있으며, 컨트롤러가 콘솔에 다른 현재 디렉토리를 가지고 있다는 것입니다 : 컨트롤러에서 실행할 때 나는이 오류가 발생합니다.

구성 파일의 절대 경로를 사용하거나 스크립트가 실행중인 디렉토리를 찾아서 파일 이름 앞에 추가해야합니다.

관련 문제