в первом ответе верно сказали что нужно реализовать метод пост у вашей вьюхи унаследованной от  DetailView, где то так:
class BlogDetailView(DetailView):
 template_name= 'blog-info.html'
 model = Blog
 def post(self, request, *args, **kwargs):
   # тут ваши действия
Все http методы должны возвращать объект HttpResponse
Конечно же бывают случаи, когда удобнее обработать POST запросы в DetailView представлении. 
Например, подписаться на блог при его просмотре. Отображение блога осуществить через DetailView, а при клике на кнопку "подписаться" отправлять форму с POST запросом на эту же страницу просмотра блога. И в DetailView вашего блога реализовать метод post(), который добавит текущему юзеру подписку на этот блог.
и кстати, http_method_names надо использовать когда хотите настроить специфичные методы. Стандартные методы HTTP уже прописаны в http_method_names по умолчанию.
Но фильтрация делается конечно через GET.
В чем не прав - поправьте :)