Как создать ссылку для удаления связанного объекта в Ruby on Rails?

Так что давайте'говорят, что у меня есть сообщения и комментарии, а URL для шоу/posts/1/comments/1, Я хочу создать ссылку для удаления этого комментария в методе уничтожения контроллера комментариев. Как я могу это сделать?

Ответы на вопрос(3)

Иногда, когда у вас есть,<span></span> или вложенные элементы внутри<a></a> пометить таким способом link_to использовать сложно. Вы можете использовать необработанный HTML-код, с которым легко работать, например:

<a class="btn btn-sm" href="https://stackoverflow.com/blogs/%[email protected]%" data-method="delete">             
  <span class="bold">Delete</span>
</a>
 Dan Barron29 нояб. 2016 г., 21:49
Вы все еще можете использоватьссылка на в этих случаях, передавая блок для определения имени ссылки: <% = link_to @blog, метод:: удалить, класс: "БТН БТН-см " делать%>     <я класс = "пг-трэш "> </ Я> <span class = "полужирный ">Удалить </ SPAN>     <% end%>

Так как некоторое время назадconfirm опция должна быть включена вdata хеш, иначе он будет тихо проигнорирован:


Решение Вопроса
 'Are you sure?'}, :method => :delete %>

в комментариях контроллера:

  def destroy
    @post = Post.find(params[:post_id])
    @comment = Comment.find(params[:id])
    @comment.destroy

    respond_to do |format|
      format.html { redirect_to post_comments_path(@post) }
      format.xml  { head :ok }
    end
  end
 Nick27 сент. 2013 г., 16:34
Я столкнулся с проблемой, когда мои ссылки AJAX выводили пользователей из системы. Мне пришлось включить теги CSRF в макет. Больше информации здесь:stackoverflow.com/questions/6434283/... Это'не полностью связаны с этим актуальным вопросом, но некоторые люди могут столкнуться с этим неожиданно.
 tehfoo11 апр. 2013 г., 18:28
Быстрое примечание:javascript_include_tag :all деприцировано в Rails> 3.1, макет приложения по умолчанию= javascript_include_tag "application" который сделает то же самое
 Vishnu Narang13 февр. 2016 г., 20:50
Обновление вашего ответа согласно ответу ниже о "подтвердить: ты уверен? быть включенным в хэш данных. Я попробовал и проверил это. Это должно быть в хэше данных.
 lacker24 мая 2011 г., 01:12
Вы также должны быть уверены, что у вас есть <% = javascript_include_tag: все%> или похожий тег в заголовке. В противном случае ссылка будет там, но не будет соответствовать: method => :удалять. Просто добавив этот комментарий, потому что это озадачило меня только сейчас ....

Ваш ответ на вопрос