Onde pode uma página de confirmação salvar ser enganchado na administração do Django? (Semelhante ao excluir confirmação)

votos
7

Eu quero emular o comportamento página de confirmação de exclusão antes de salvar certos modelos na administração. No meu caso, se eu mudar um objeto, alguns outros devem ser excluídos como eles dependem agora o estado do objeto out-of-date.

Eu entendo de onde para implementar as atualizações em cascata reais (dentro método do salvar modelo de pai), mas eu não vejo uma maneira rápida para pedir a confirmação do usuário (e, em seguida, reverter, se decidir não salvar). Acho que eu poderia implementar alguma lógica confirmação estranho diretamente dentro do método save (uma espécie de duas fases save) mas que parece ... feio.

Quaisquer pensamentos, até mesmo indicações gerais para a base de código Django?

Obrigado!

Publicado 22/09/2008 em 12:11
fonte usuário
Em outras línguas...                            


3 respostas

votos
2

Você poderia sobrecarregar o get_formmétodo do seu modelo de administração e adicione um caixa extra para a forma gerada que tem que ser bilhete. Alternativamente, você pode substituir change_viewe interceptar a solicitação.

Respondeu 22/09/2008 em 12:42
fonte usuário

votos
1

Eu sou de nenhuma maneira um especialista em Django, assim que esta resposta pode desencaminhar você.

Comece a procurar algo em torno django.contrib.admin.options.ModelAdmin, especialmente render_change_forme response_change. Eu acho que você precisa subclasse ModelAdmin para o seu modelo e fornecer comportamento exigido em torno desses métodos.

Respondeu 22/09/2008 em 12:36
fonte usuário

votos
0

Você já pensou em substituir os modelos administrativos para os modelos em questão? Esta ligação proporciona uma excelente visão geral do processo. Nesta situação particular, que tem um nível mais detalhado de controlo pode ser o melhor caminho para atingir o resultado desejado.

Respondeu 23/09/2008 em 16:37
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more