2011-10-06 3 views
0

나는 잘못된 방법으로이 작업을 수행하고 있지만, 애셋을 미리 처리 할 수는 없다. 나는 사람이 줄 수있는 모든 도움을 주셔서 감사합니다레일스 애셋

Invalid CSS after "...kground-color: ": expected expression (e.g. 1px, bold), was "#;" 
/rails/ship/releases/20111006191503/app/assets/stylesheets/application.css) 

:

#plant.css.erb 
<% 
plants = Plant.all 
if plants 
    plants.each do |plant| 
%> 
    .plant_<%= plant.id %> { 
     background-color: #<%= plant.color %>; 
     padding: 1px; 
    } 
<% 
    end 
end 
%> 

나는이 오류가 발생합니다. 충분한 정보를 제공하지 못하면 필요한 것을 알려주십시오. 기꺼이 제공합니다.

답변

1

구문에 무엇이 잘못된 것인지 잘 모르겠지만 전체적으로 접근 방식은 거꾸로 된 것 같습니다. 일반적으로 각 객체에 대해 새 CSS 규칙을 만들지는 않습니다. CSS 파일 (ERB 필요 없음)에서 다음

# views/plants/index.html.erb 
<div class="plant plant-<%= plant.color %> 
... 
</div> 

과 같은 왜 뭔가 정의 몇 가지 클래스

어쩌면
# plant.css 
plant_red {background-color: #F00;} 
plant_blue {background-color: #00F;} 

당신이 일을하지 않는 그 한정된 수 없기 때문에 다른 색깔의 식물? 예 : 너는 색깔의 무지개를 가지고 있니?

# views/plants/index.html.erb 
<div class="plant" style="background-color:#<%= plant.color %>" > 
+0

색상은 사용자가 동적으로 선택하기 때문에 내가 당신의 스타일 제안에 갔다 :이 경우, 그것은 "오래된 학교"를 가서 스타일 태그를 사용하는 것이 정말 더 적합합니다. 고맙습니다 –

관련 문제