¿Cómo puede hacer que el administrador de una prohibición ForeignKey ('self') se refiera a sí mismo?

Tengo un modelo con una clave de falsificación para sí mismo. Por ejemplo:

class Folder(models.Model):
    name = models.CharField()
    parent_folder = models.ForeignKey('self', null=True, blank=True, default=None, on_delete=models.CASCADE)

Para mis propósitos, nunca quieroparent_folder para referirse a sí mismo, pero la interfaz de administración predeterminada para este modelo permite al usuario elegir su propia instancia. ¿Cómo puedo evitar que eso suceda?

Editar: Si está intentando hacer un diseño de árbol jerárquico, como yo, otra cosa que debe tener en cuenta son las relaciones circulares entre padres. (Por ejemplo, el padre de A es B, el padre de B es C y el padre de C es A.) Evitar eso no es parte de esta pregunta, pero pensé que lo mencionaría como un consejo.

Respuestas a la pregunta(2)

Su respuesta a la pregunta