Это список, который был сделан пользователем, а метод destroy в контроллере Tracks (каждый трек относится к каждому элементу в списке) удаляет их после нажатия ссылки. Однако это происходит, и список остается постоянным.Почему я не могу удалить элементы из своей базы данных?
Контроллер:
class TracksController < ApplicationController
def index
@track = Track.new
@tracks = Track.all
end
def create
@track = Track.new(params[:track])
if @track.save
redirect_to :action=>"index"
else
@tracks = Track.all
render :action=>"index"
end
end
def destroy
@track = Track.find(params[:id])
@track.destroy
redirect_to(tracks_url)
end
end
Шаблон (для обозначения линии, которая создает ссылку удалить и определяет его поведение)
<h1>Playlist</h1>
<%= form_for @track,:url=>{:action=>'create'} do |f| %>
<%= f.error_messages %>
<p>
<%= f.text_field :youtube_url, :required=>true %>
<%= f.submit 'Add' %>
</p>
<% end %>
<hr />
<% if Track.first == nil %>
<p>Database is empty!</p>
<%else%>
<% @tracks.each do |track| %>
<ul class="list_container">
<li class="list_elements"><i class="bullet icon-asterisk"></i> <%= track.youtube_url %></li><i class="icon-remove-circle remove_pos"><%=link_to 'delete', :controller=>"tracks", :method=>:delete,:id=>track.id %></i>
</ul>
<% end %>
<% end %>
Я пробовал это, опять же, список остается постоянным ... – Louis93