残念ながら、これはまったく意味がありません。
self
まず、最初のパラメーターとして持っていないため、これをメソッドにすることはできません。
次に、インスタンスではなくクラスを取得しているようです。クラス自体を保存することはできず、そのインスタンスのみを保存できます。
第三にpost_save
、モデルのメソッドではありません (自分で定義した場合を除く)。これはシグナルであり、シグナルを呼び出すのではなく、シグナル ハンドラーをアタッチし、そこでロジックを実行します。シグナルからメソッドにデータを返すこともできません。
最後に、2 を追加したプロファイル インスタンスは、2 行目に保存したプロファイル インスタンスと必ずしも同じではありません。これは、Django モデル インスタンスに ID がないためです。一度取得して変数に入れ、それを保存します。
コメント フレームワークは、汎用の post_save の代わりに使用できる独自のシグナルを定義します。したがって、実際に必要なのは、comment_was_posted にシグナル ハンドラーを登録することです。そのハンドラー内で、ユーザーのプロファイルを取得して更新する必要があります。
def comment_handler(sender, comment, request, **kwargs):
profile = request.user.get_profile()
profile.points += 2
profile.save()
from django.contrib.comments.signals import comment_was_posted
comment_was_posted.connect(comment_handler, sender=Comment)