On 24 Apr 2008, at 16:20, erik wrote: > The following piece of code returns: > syntax error, unexpected kELSE, expecting kEND > > When I delete this block of code all works well - I have read that > this may be an issue with copied or pasted code, UTF-8 issues etc.... > > I have tried all of these - is there simply something wrong with my > code that I am not seeing? > > <% if c.amount < 500 %> > <% @project.budgmonthexpends.find(:all, :conditions => > [:year_id == c.year_id]).each do |d| %> > <% else %> <!-- Error is occuring here --> > <% / project.budgmonthexpends.find(:all, :conditions => :year_id > == c.year_id).each do |d|%> > <% end %> > > Thanks, > Erik You never finish (or do anything with) the block from the line above, you have to end that block with 'end' before your 'else' statement. if c.amount < 500 @project.budgmonthexpends.find(:all, :conditions => [:year_id == c.year_id]).each do |d| end else @project.budgmonthexpends.find(:all, :conditions => :year_id == c.year_id).each do |d| end end Is valid code (though still gibberish since you're not doing anything with the two each blocks). Hope that helps. Alex Gutteridge Department of Biochemistry University of Cambridge