Đây là dự án đầu tiên của tôi trong đường ray, đó là tạo bảng để lưu trữ dữ liệu về trò chơi. Tôi có thể hiển thị dữ liệu từ bảng về điểm số của người chiến thắng, số điểm thua cuộc, v.v. Tuy nhiên, tôi gặp vấn đề với cột trong bảng có chứa các liên kết xóa cho mỗi trò chơi.Sự cố trong đường ray 4.0 với việc tạo liên kết_để xóa một hành động
Dưới đây là mã của tôi trong bộ điều khiển trò chơi dành cho các phương pháp xóa:
def delete
@game = Game.find(params[:game])
@game.destroy()
redirect_to :action => 'index'
end
Một đoạn mã bàn của tôi, trong đó bao gồm dòng cho lệnh link_to
<% @games_items.each do |t| %>
<tr>
<td><%= t.winner.name %></td>
<td><%= t.loser.name %></td>
<td><%= t.challenger.name %></td>
<td><%= t.winner_score %></td>
<td><%= t.loser_score %></td>
<td><%= link_to 'Delete', delete_game_path(id: t.id)%></td>
</tr>
<% end %>
Ở routes nộp tôi được gọi là
resources :games
Theo hiểu biết của tôi, giúp tạo định tuyến cơ bản. Bất cứ ai có thể giúp tôi tìm ra lý do tại sao link_to của tôi không hoạt động?
Tôi nên xem xét hành động của mình ở đâu? Điều đó có chứa trong phương thức rake không? –
@MichaelLiu yes, đầu ra của tác vụ 'rake routes' chứa các tên hành động thích hợp. –
@MarekLipka Tôi gặp vấn đề tương tự nhưng tôi không thể có phương thức ': delete' để hoạt động. Không có vấn đề gì tôi làm, nó kết quả trong một yêu cầu 'get'. Bất kỳ ý tưởng tại sao? '<% = link_to (" Xóa! ", {: controller => 'projects',: action => 'destroy',: id => dự án.hashed_id}, {method:: delete})%> ' – emersonthis