私は現在、Djangoに基づく小さなCMFに取り組んでおり、そこにスレッド化されたコメントを実装しましたが、これは正常に機能しているようです。最新のソースはhttp://github.com/kovshenin/Juiceで入手できます。興味のあるモジュールはjuice.commentsです。スレッドは、juice.front.views.singleビューから呼び出されるnews-single.htmlテンプレートに示されています。テンプレートに渡されるレベルとインデントのパラメーターに注意してください。
# comments
p.comments = Comment.tree.filter(content_type__pk=ctype.id, object_id=p.id)
for c in p.comments:
c.indent = c.level * 50
pオブジェクトはPost型で、テンプレートに渡されます。
さて、管理者/所有者以外の人へのスレッドの制限について。同じビューで、コメントフォームの処理方法を示します。ここでは、親コメントが提供されている場合は、それを探していることがはっきりとわかります。そこにいくつかのロジックを追加し、現在のユーザーログインとその権限を確認する必要があります。それらが設定されていない場合は、parent=NULLを使用します。テンプレートでは、返信リンクを非表示にするだけです;)
それがお役に立てば幸いです。また、私がこのプロジェクトに絶えず取り組んでいることに注意してください。毎日5〜10のコミットがあるので、ダウンロードするソースに注意してください。ドキュメントには現在、投稿の処理方法のみが含まれています(すでに部分的に古くなっています)が、私はそれを絶えず更新します。
乾杯。