ここにある Twitter Boostraps タブ可能な機能を使用しています: http://twitter.github.com/bootstrap/components.html#navs
そして、このナビゲーション コンテンツ ウィンドウ内で、「コース」を表示するビューをレンダリングしようとしています。views/courses/_show.html.erb にあるこのビューは次のようになります。
<div class="center hero-unit">
<h1><%= @course.course_name %></h1>
<%= link_to 'New Question Set',new_answer_path(:course_ID => @course.id), :class => "btn btn-large btn-primary" %>
<%= link_to 'Launch Session!', edit_course_path, :class => "btn btn-large btn-primary" %>
</div>
私はそれをレンダリングしようとしていますが、views/instructor/show.html.erb の次のコードで失敗しています
<% courses.each do |c| %>
<div class="tab-pane" id="<%=c.course_name%>">
<%= render :partial => 'courses/show', :locals => {@course=>c} %>
</div>
次のエラーが表示されます。
/app/views/courses/_show.html.erb:1: 構文エラー、予期しない '='、keyword_end が必要です ...tput_buffer = @output_buffer; = local_assigns[:];show = loca... ... ^ /app/views/courses/_show.html.erb:1: 構文エラー、予期しない ']'、tSTRING_CONTENT または tSTRING_DBEG または tSTRING_DVAR または tSTRING_END を期待しています ... tput_buffer; = local_assigns[:];show = local_assigns[:show];... ...
私のコース/_show.html.erbの1行目で失敗していると言っています
私のコースコントローラーは次のようになります。
class CoursesController < ApplicationController
# GET /courses
# GET /courses.json
def index
@courses = Course.all
respond_to do |format|
format.html # index.html.erb
format.json { render :json => @courses }
end
end
# GET /courses/1
# GET /courses/1.json
def show
@course = Course.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render :json => @course }
end
end
# GET /courses/new
# GET /courses/new.json
def new
@course = Course.new(instructor_ID: params[:instructor_ID])
respond_to do |format|
format.html # new.html.erb
format.json { render :json => @course }
end
end
# GET /courses/1/edit
def edit
@course = Course.find(params[:id])
end
# POST /courses
# POST /courses.json
def create
@course = Course.new(params[:course])
respond_to do |format|
if @course.save
format.html { redirect_to @course, :notice => 'Course was successfully created.' }
format.json { render :json => @course, :status => :created, :location => @course }
else
format.html { render :action => "new" }
format.json { render :json => @course.errors, :status => :unprocessable_entity }
end
end
end
# PUT /courses/1
# PUT /courses/1.json
def update
@course = Course.find(params[:id])
respond_to do |format|
if @course.update_attributes(params[:course])
format.html { redirect_to @course, :notice => 'Course was successfully updated.' }
format.json { head :no_content }
else
format.html { render :action => "edit" }
format.json { render :json => @course.errors, :status => :unprocessable_entity }
end
end
end
注: スペースを節約するために、コントローラーで delete などのメソッドの一部を省略しました。
何か案は?!