Наследование, конечно, позволит избавиться от дублирования кода, но есть два момента: во-первых, Вы меняете функциональное назначение get_object() и заставляете его что-то записывать, что само по себе некрасиво с точки зрения программиста :) если уж идти этим изначально неверным путём (ниже объясню почему неверным), то, думаю, красивее было бы переопределить dispatch().
Во-вторых и главных, делать сохраняющие операции на HTTP-методы GET, HEAD и OPTIONS не рекомендуется никому. Хотя бы из тех соображений, что через несколько секунд после того, как Вы впервые их запросите, налетят всякие гуглоботы и накрутят счётчики. И хорошо ещё, если отказ в обслуживании не вызовут.
Считается хорошим тоном и признаком здравого смысла использовать для сохраняющих вьюшек метод POST. Или, что ещё лучше, использовать RESTful-подход с POST, PUT и DELETE для создания, изменения и удаления соответственно.
Конкретно в Вашем случае, мне кажется, для вьюхи инкременатции счётчика лучше всего использовать FormView. Или UpdateView, там уже реализован метод get_object().