わかりましたので、私は教授やログオンおよび/編集予定を作成する学生のためのアポイントメントサイトを作成しています。私は教授の側をやりましたが、私は学生と闘っています。今、私は教授と付き合っている予定から自分自身を取り除くために、自分の予定の隣にあるボタンを学生がクリックするようにしています。今すぐ私は簡単に予定のIDを削除することができますが、予定はなくなりましたが、代わりに他の生徒が後でその予定を選択できるように予定からstudent_idを削除します。ここに私のコードは次のとおりです。 CONTROLLER:あなたがそれ(予定ページ)期待していなかったときは、nilのオブジェクトを持っている
def destroy
if session[:professor] != nil
@appointment = Appointment.find(params[:id])
@appointment.destroy
end
if session[:student] != nil
@appointment = Appointment.find_by_id_and_student_id(params[:id],params[:student_id])
@appointment.destroy(params[:student_id])
end
end
VIEW:あなたが見てみたい場合、私はここに私のファイルとのリンクが含まれている
<% @appointments.each do |appointment| %>
<tr>
<td><%= appointment.professor_id %></td>
<td><%= appointment.student_id %></td>
<td><%= appointment.timeslot %></td>
<td><%= link_to 'remove appointment', appointment, confirm: 'Are you sure?', method:
:delete %></td>
</tr>
<% end %>
。 CLICK HERE TO VIEW MY FILES. また、すべてが予定コントローラで行われます。この問題は学生のショーに表示されます(削除ボタンを押すと表示されます)。
SOLUTION: わかりましたので、私はそれが原因私はあなたたちからもらった助けに働いてしまいました。だからここに私がやったことです: @appointment = Appointment.find_by_id_and_student_id(のparams [:ID]、セッション[:学生] .user_id) appointment.update_attribute @(:STUDENT_ID、nilの)ほぼ確実
? –
アプリ/コントローラ/ appointments_controller.rb:118: '「それは行番号への参照を持っていないとして、あなたが提供したコードであるかのラインを知って助けにはならない – user1179269
を破壊しました。行を指し示すコードにコメントを追加します。 –