当我尝试保存论坛时,我正在为nil获取一个未定义的方法`map':NilClass。
这是我的 jobs_controller.rb :
def new
@job_categories = JobCategory.all.map{|c| [ c.title, c.id ] }
@job = Job.new
end
def edit
@job_categories = JobCategory.all.map{|c| [ c.title, c.id ] }
@job = Job.find(params[:id])
end
def create
@job = Job.new(job_params)
respond_to do |format|
if @job.save
format.html { redirect_to @job, notice: 'Job was successfully created.' }
format.json { render :show, status: :created, location: @job }
else
format.html { render :new }
format.json { render json: @job.errors, status: :unprocessable_entity }
end
end
end
def update
respond_to do |format|
if @job.update(job_params)
format.html { redirect_to @job, notice: 'Job was successfully
updated.' }
format.json { render :show, status: :ok, location: @job }
else
format.html { render :edit }
format.json { render json: @job.errors, status: :unprocessable_entity }
end
end
end
这是我的 jobs / _form.html.erb :
<div class="field-group">
<p>Jobs Category</p>
<%= form.select(:job_category_id, options_for_select(@job_categories)) %>
我的jobs_categories也拥有自己的控制器和模型。 如果您需要任何其他信息,请随时提出。
当我尝试提交表单时,我的错误正在发生。
答案 0 :(得分:1)
@job_categories
变量缺少create
和update
次操作。在无效保存后,表单呈现时会导致错误 - options_for_select
尝试在未声明的变量上调用.map
。