Если я понимаю твой вопрос, тебе уже почти все, что тебе нужно. Ваш файл post.erb может выглядеть примерно так:
<h1><%= @post.title %></h1>
<%= @post.body %>
<% @post.comments.each do |comment| %>
<p><%= comment.name %><br /><%= comment.body %></p>
<form action="/comment/<%= comment.id %>" method="post">
<input type="hidden" name="_method" value="delete" />
<input type="submit" value="Delete comment">
</form>
<% end %>
Чтобы создать новые комментарии, просто добавьте форму POST с правильными полями, которые указывают на ваш / comments / create route.
Причина, по которой у меня есть эта форма с кнопкой «Удалить», заключается в том, что ваш «delete» / comment /: id »будет искать метод HTTP DELETE. К сожалению, браузеры на самом деле не реализуют это. Поиск поля "_method" в форме POST - это то, как приложения Sinatra / Rails / Rack справляются с этим. Затем, в верхней части вашего приложения Sinatra, вы должны указать ему, чтобы искать это поле "_method" с:
use Rack::MethodOverride
Надеюсь, это то, что вы спрашивали.