OdooWiki OCA HUB

CMS delete content

cms_delete_content folder_open OCA/website-cms open_in_new
Sin categoría Licencia: LGPL-3

Funciones básicas para eliminar contenido a través del frontend.

Características

  • registra tu propia vista de confirmación de eliminación personalizada por modelo
  • usa cms_status_message para mostrar el mensaje de confirmación de la eliminación
  • plantilla genérica para solicitar la confirmación de eliminación
  • nuevos campos y parámetros en website.published.mixin para gestionar enlaces de eliminación y redirecciones

Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.

auto_awesome Qué hace este módulo

Generado por IA a partir del código · Odoo 13.0

Permite a los visitantes del sitio web eliminar contenido desde el frontend mediante una ventana emergente de confirmación y, a continuación, muestra un mensaje de estado o los redirige después.

Este módulo añade un flujo de eliminación en el frontend para el contenido del sitio web. Cuando un elemento de página lleva la clase cms_delete_confirm, al hacer clic en él se abre un diálogo modal que pregunta "Are you sure you want to delete this item?" con los botones Confirm y Cancel.

  • La ventana emergente de confirmación se renderiza desde una plantilla genérica, por lo que cualquier modelo puede reutilizarla.
  • Al confirmar se envía la solicitud al servidor, que elimina el registro y devuelve un resultado gestionado por JavaScript.
  • Si se proporciona un destino de redirección, el usuario es enviado allí tras un breve retardo y se añade un mensaje de estado al sitio web; en caso contrario, el mensaje de confirmación se inyecta directamente en la página.
  • El módulo extiende cms.info.mixin con dos métodos auxiliares que producen la pregunta de confirmación y el mensaje de "deleted", utilizando la descripción del modelo en el texto.
  • Se apoya en cms_status_message para mostrar el mensaje de resultado y en cms_info para el enlace de eliminación y los campos de redirección.

Toca los assets del frontend del sitio web y el modelo abstracto cms.info.mixin. No se añaden menús ni pantallas de backend nuevos; todo ocurre en el sitio web a través del modal y el área de mensajes de estado.

Lo necesitan otros módulos

Modelos y campos (1)
  • cms.info.mixin · amplía un modelo existente

Texto generado por IA (DeepSeek) al leer el código de la versión 13.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub

Disponibilidad por versión

Revisado: 2026-11-03
Confirmado (verificado en repositorio y rama) Estimado (sin verificar) Sin información

Estado de confirmación: 1 confirmada, 8 sin información de 9 versiones.

Fuentes · Odoo 13.0

Confirmado el 2026-11-03 en la rama 13.0 de OCA/website-cms.

terminal Instalación y uso

Documentación de OCA · Odoo 13.0

Botón de eliminación y comportamiento

To add a delete button:

.. code:: html

    <a class="btn btn-danger cms_delete_confirm" t-att-href="object.cms_delete_confirm_url">Delete</a>

When you click on a confirmation dialog pops up.

If you hit ``cancel`` the popup is closed. If you hit submit the item is
deleted and you get redirected to your model's ``cms_after_delete_url``.
By default is ``/``.

**Customization**

Custom per-model delete message
class MyModel(models.Model):
    _inherit = "my.model"

    @api.multi
    def msg_content_delete_confirm(self):
        self.ensure_one()
        return _('Are you sure you want to delete "%s"?.') % self.name

"URL posterior a la eliminación" personalizada

When you are viewing a content and you delete it you want to be
redirected to some other place.

By default you get redirected to the root of the website.

To change this behavior just override the attribute in your model
declaration:

.. code:: python

    class MyModel(models.Model):
        _inherit = "my.model"

        cms_after_delete_url = '/foo'

Note: if you want to customize it on demand for particular pages, or you
are deleting an item from another page (like a management page) you can
pass ``?redirect=`` in the url, like:

.. code:: html

    <a class="btn btn-danger cms_delete_confirm" t-attf-href="#{object.cms_delete_confirm_url}?redirect=">Delete</a>

Custom global delete confirm message appeareance
<template id="delete_confirm" inherit_id="cms_delete_content.delete_confirm">

    <xpath expr="//h4[@id='delete_confirm']" position="replace">
        <h1 t-esc="main_object.msg_content_delete_confirm()">I want it bigger!</h1>
    </xpath>

</template>

Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Instalación, Configuración.

info

Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.