0
が定義されていない私は、削除ビューの削除メソッドをオーバーライドしようとしています。 私は2モデルCategory
とSubcategory
を持っています。- グローバル名「自己」が私のジャンゴベースのアプリケーション</p> <p>で
カテゴリはサブカテゴリの外部キーであり、削除時に保護されます。
category = models.ForeignKey(Category, on_delete=models.PROTECT)
これは、しかし、私は私が取得しています実行するたびview.py で私のクラスである - グローバル名「自己」が定義されていません。
(自己クラスを参照する必要がありますので、コードがクラス内にある。私はそれを使用してインスタンスを作成する必要がありますが、私はジャンゴでオンライン見たすべてのサンプルは、まさにこのようにそれを行うと思った。)
class CategoryDelete(DeleteView):
model = Category
success_url = reverse_lazy('category_list')
def delete(request, *args, **kwargs):
self.object = self.get_object()
if self.object.gameteams_set.exists():
# Return the appropriate response
success_url = self.get_success_url()
self.object.delete()
return HttpResponseRedirect(success_url)