2010-08-21 3 views
1

사이트에있는 파일을 수정하는 방법을 알아낼 수 없습니다 내 찌른 환경에서 (DreamHost에) 아무 것도 발생하지 않습니다 - 파일이 수정되지 않습니다 - 아무것도.루비/쓰기 라이브이 (내가 CSS 파일을 다시 작성하고) 내 dev 환경에서 잘 작동

내가 할 수 있어야 할 것은 기존 파일을 덮어 쓰는 것입니다. 프로덕션에서는 그 파일을 덮어 쓸 수 없습니다. 나는 심지어 chmod를 777로 설정했는데 아무 것도 변경하지 않았고 로그에 아무것도 나타나지 않는 것으로 보입니까?

저는 RoR에 멍청한 사람입니다. 감사합니다.

답변

3

\public\stylesheets\colors.css라고 POSIX 파일 시스템에서 유효한 파일 이름 문자가 있지만 NTFS에서 디렉토리 분리입니다 . 백 슬래시를 슬래시로 변경하십시오.

+0

ah 예, 매우 간단합니다. – naspinski

+1

IIRC, Ruby는 모든 파일 작업에서 기본 디렉토리 구분 기호로'/'를 번역합니다. 그래서 당신은'File.join dir, file' 또는 간단히'dir/file'을 사용하여 당신의 Windows 컴퓨터에서'dir \ file'을 참조하고 당신의 리눅스 컴퓨터에서'dir/file'을 참조 할 수 있습니다. 누군가 내가 틀렸다면 나에게 알려 줬다. – guns

-2

css 파일과 같은 공개 자산의 경우에도 프로덕션 모드의 변경 사항을 보려면 서버를 다시 시작해야합니다. css 변경 사항을 데이터베이스에 저장하고 동적으로로드하거나 환경/production.rb 파일을 변경하여 정적 자산을 다시로드해야합니다. 그러나 실제로 느리게 진행됩니다. 당신이 정말로 /public/stylesheets/

백 슬래시, \colors.css라는 파일에 기록하고자 할 때 파일에 작성

+1

전혀 사실이 아닙니다. 이것은 브라우저 사이드 캐싱에 의해 완전히 유도됩니다. 때로는 레일이 자산 URL의 타임 스탬프를 지정하지만 페이지 캐싱 설정이 없으면이 작업을 수행 할 때도 프로덕션 환경에서 변경해야합니다. –

+0

Squeegy가 맞습니다. CSS는 렌더링 엔진과 아무 관련이 없습니다. – naspinski