2012-05-19 4 views
0

레일을 처음 사용하여 구문 오류가 무엇인지 알아낼 수 없습니다. 첫 번째 블록 (가격 대비)을 통과 한 것으로 보이며 오류가 발생하면 ' 점수는 'Ruby on Rails 구문 오류

index.html.erb : 13 => 등 ... 여기

<% dataset = { %> 
<% 'price' => [@wines.each do |wine| %> 
<%     wine.price_750 %>, 
<%    end].to_vector(:scale),%> 

<% 'score' => [@wines.each do |wine| %> 
<%    if current_user.wine_ratings.scoped_by_wine_id(wine.id).exists? %> 
<%    current_user.wine_ratings.find_by_wine_id(wine.id).rating_value %>, 
<%    else %> 
<%     wine.rating %>, 
<%    end%> 
<%    end].to_vector(:scale)%> 
<% }.to_dataset %> 

오류 메시지의 구문 오류, 예기치 않은'; ', tASSOC 기대'); '점수'= > [@ wines.each 할 | 와인 |

index.html.erb : 13 : 구문 오류, 예기치 않은 tASSOC, 예상되는 keyword_end ');'score '=> [@ wines.each do | wine |

index.html.erb : 20 :, '}'구문 오류, 예기치 못한 keyword_end 기대 은}

누구든지 내가 잘못 알고 .to_dataset?

답변

0

그냥 짐작할 수 있겠지만, erb은 개행과 ERb 태그를 열거 나 닫는 것으로 혼동을 느낍니다. 가장 바깥 쪽의 태그를 제외하고 모두 폐기하십시오. 번갈아 빈 줄을 죽이거나 미친 듯이 둘러 싸십시오. 첫 번째 제안은 가독성, 디버깅 속도 및 사람들의 첫인상을 증가시키기 때문입니다. p

+0

다른 오류로 저를 얻었다 - 문제의 일부가 될 것 같았다 정도. 나는 여분의 erb 태그를 폐기하려고 시도 할 것이다. 감사! –

2

일반적으로 MVC 프로그래밍에 대해 혼란 스럽다고 생각합니다. 이러한 종류의 코드는 컨트롤러 나 뷰 도우미 중 하나가 아닌 뷰에 속하지만, 일반적으로 이와 같은 비즈니스 로직을 최소한으로 유지하십시오.

+1

그래, 아직 많은 기본 개념을 이해하려고 노력 중 - 컨트롤러로 이동하거나 도우미를 보려고합니다. 감사! –

+0

죄송합니다. 무례하거나 전혀 의미가 없습니다. :) – alexanderpine

0

이 게시물이 귀하의 오류와 관련이 있는지 여부는 확실하지 않지만 RoR에서받은 오류에 대해 먼저봤을 때이 질문이 첫 번째 링크였습니다. 그래서 내 솔루션을 붙여 :). 빈 줄을 죽이는

Missing controller Argument Error