==================== Comment form classes ==================== .. module:: django.contrib.comments.forms :synopsis: Forms for dealing with the built-in comment model. .. warning:: Django's comment framework has been deprecated and is no longer supported. Most users will be better served with a custom solution, or a hosted product like Disqus__. The code formerly known as ``django.contrib.comments`` is `still available in an external repository`__. __ https://disqus.com/ __ https://github.com/django/django-contrib-comments The ``django.contrib.comments.forms`` module contains a handful of forms you'll use when writing custom views dealing with comments, or when writing :doc:`custom comment apps `. .. class:: CommentForm The main comment form representing the standard, built-in way of handling submitted comments. This is the class used by all the views :mod:`django.contrib.comments` to handle submitted comments. If you want to build custom views that are similar to Django's built-in comment handling views, you'll probably want to use this form. Abstract comment forms for custom comment apps ---------------------------------------------- If you're building a :doc:`custom comment app `, you might want to replace *some* of the form logic but still rely on parts of the existing form. :class:`CommentForm` is actually composed of a couple of abstract base class forms that you can subclass to reuse pieces of the form handling logic: .. class:: CommentSecurityForm Handles the anti-spoofing protection aspects of the comment form handling. This class contains the ``content_type`` and ``object_pk`` fields pointing to the object the comment is attached to, along with a ``timestamp`` and a ``security_hash`` of all the form data. Together, the timestamp and the security hash ensure that spammers can't "replay" form submissions and flood you with comments. .. class:: CommentDetailsForm Handles the details of the comment itself. This class contains the ``name``, ``email``, ``url``, and the ``comment`` field itself, along with the associated validation logic.