朋友你好我需要幫助,Django的 - on_delete = models.PROTECT不能正常工作
我在蟒蛇新的Django
這一次,我建立我的應用程序,我嘗試使用on_delete=models.PROTECT
它工作正常,但我想要替換我的模板ProtectedError
的任何消息。
我該怎麼做?
我有這樣的事情:
grupos模式
class grupos(models.Model):
nombre_grupo = models.CharField(max_length=100)
nombre_puerto = models.ForeignKey(puerto, on_delete=models.PROTECT)
def __unicode__(self):
return self.nombre_grupo
def __str__(self):
return self.nombre_grupo
正如你可以看到有一個dependecy,在那裏,如果我有一個puerto
創建它不會讓我刪除puerto
這罰款,這是工作,但我得到的模板錯誤,我想要一個味精而不是。
這裏是我的波多黎各刪除視圖:
波多黎各views.py
def delete(request, id):
# I want the message here..... (such as messages.warning or something)
note = get_object_or_404(puerto, pk=id).delete()
messages.error(request, 'This puerto has been deleted.')
return redirect('/puertot')
例如,我想是這樣messages.warning(request, 'You can't delete this because it's being used by grupos')
模板錯誤:
ProtectedError at /delete/59/ ("Cannot delete some instances of model 'puerto' because they are referenced through a protected foreign key: 'grupos.nombre_puerto'", ]>)
我試圖弄清楚如何管理這個,但沒有線索......
我該怎麼做?
謝謝......!
更新了我的答案。請立即檢查並告訴我ProtectedError異常現在是否得到更好的處理? –
是的!按預期工作,謝謝! @PrakharTrivedi – User100696