アプリで何が起こったのかわかりません。完全に機能するコントローラーがいくつかありますが、これはそうではありません。
私のsylabus_controller.rb
# encoding: utf-8
module Admin
class SylabusController < BaseController
def destroy
@sylabu = @topic.sylabus.find(params[:sylabus])
@sylabu.destroy
redirect_to admin_course_topic_sylabu_path(@course, @topic), notice: 'Sylabus deleted'
end
私の /views/admin/sylabus/index.html.rb
<% @sylabu.each do |syla| %>
<tr>
<td><%= syla.mupet_code %></td>
<td><%= syla.name %></td>
<td style="width:155px">
<%= link_to '<i class="icon-pencil"></i>'.html_safe, edit_admin_course_topic_sylabus_path(@course,
@topic,
syla),
class: 'btn' %>
<%= link_to '<i class="icon-trash icon-white"></i>'.html_safe, [:admin, @course, @topic, syla], class: 'btn btn-danger', method: :delete, data: { confirm: 'Are you sure?' } %>
<%= link_to '<i class="icon-eye-open"></i>'.html_safe, [:admin, @course, @topic, syla],
class: 'btn' %>
</td>
</tr>
<% end %>
ターゲット Web はボタンの削除にあります。localhost:3000/admin/courses/1/topics/2/sylabus.8 で、次のエラー メッセージが表示されます。
Routing Error
No route matches [DELETE] "/admin/courses/1/topics/2/sylabus.8"
Try running rake routes for more information on available routes.
コンソールから rake routes を実行すると
POST /admin/courses/:course_id/topics/:topic_id/sylabus(.:format) admin/sylabus#create
new_admin_course_topic_sylabu GET /admin/courses/:course_id/topics/:topic_id/sylabus/new(.:format) admin/sylabus#new
edit_admin_course_topic_sylabu GET /admin/courses/:course_id/topics/:topic_id/sylabus/:id/edit(.:format) admin/sylabus#edit
admin_course_topic_sylabu GET /admin/courses/:course_id/topics/:topic_id/sylabus/:id(.:format) admin/sylabus#show
PUT /admin/courses/:course_id/topics/:topic_id/sylabus/:id(.:format) admin/sylabus#update
DELETE /admin/courses/:course_id/topics/:topic_id/sylabus/:id(.:format) admin/sylabus#destroy
完全に機能している他のコントローラーからのコピーと貼り付けであるため、エラーが発生しているかどうかはわかりません。
ご回答ありがとうございます。
すてきな一日を