{"id":786,"date":"2025-06-19T13:04:42","date_gmt":"2025-06-19T13:04:42","guid":{"rendered":"https:\/\/sienna-manatee-218967.hostingersite.com\/blogs\/cambios-en-vistas-odoo-v18-2\/"},"modified":"2026-05-04T04:01:36","modified_gmt":"2026-05-04T04:01:36","slug":"cambios-en-vistas-odoo-v18","status":"publish","type":"post","link":"https:\/\/exdoo.mx\/blogs\/cambios-en-vistas-odoo-v18\/","title":{"rendered":"Cambios en vistas Odoo v18"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/cambios-b-d954ynRNyLt8p4w1-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<p dir=\"auto\" class=\"body\"><span><strong>Eliminaci\u00f3n del atributo <em>attrs<\/em><\/strong><\/span><\/p>\n<div style=\"background:linear-gradient(135deg,#0A7099 0%,#0d8db8 100%);color:#fff;padding:28px 26px;border-radius:16px;margin:0 0 28px;box-shadow:0 4px 16px rgba(10,112,153,.2);\">\n<div style=\"display:inline-block;background:rgba(255,255,255,.18);padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:12px;color:#fff;\">\ud83d\udcd8 ART\u00cdCULO T\u00c9CNICO<\/div>\n<p style=\"font-size:16px;line-height:1.6;margin:0;color:#fff;opacity:.95;\">En Odoo 17, se usaba attrs para definir condiciones de visibilidad (invisible), requeridos (required) y solo lectura (readonly):<\/p>\n<\/div>\n<p dir=\"auto\" class=\"body\"><span>v17:<\/span><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-Awv9XqewbPh21PRx-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span>v18:<\/span><\/h3>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-mv0J9zQ89WiKJrgX-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span>Soporta expresiones Python simples (==, !=, in, not in).<\/span><\/h3>\n<p dir=\"auto\" class=\"body\"><span><strong>La vista <em>tree<\/em> ahora se llama <em>list.<\/em><\/strong><\/span><\/p>\n<p dir=\"auto\" class=\"body\"><span>v17:<\/span><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-mv0J9zkx0rUZ5pjq-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span>Cambia la etiqueta de <strong><em>&lt;tree&gt;&lt;\/tree&gt;<\/em><\/strong> por   <strong><em>&lt;list&gt;&lt;\/list&gt;<\/em> <\/strong><\/span><\/h3>\n<p dir=\"auto\" class=\"body\"><span><strong>Cambio de color en vistas lista (antes colors, ahora decoration).<\/strong><\/span><\/p>\n<p dir=\"auto\" class=\"body\"><span>Para el cambio de colores en la vista lista, deja de usar por completo colors.<\/span><\/p>\n<p dir=\"auto\" class=\"body\"><span>v17:<\/span><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-A85VkL6KgvS5EvXG-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span>v18:<\/span><\/h3>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-mjEG0eP3qNu21zBg-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span><strong>Tipos de decoraci\u00f3n:<\/strong><\/span><\/h3>\n<div style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:14px 0;\">\n<div style=\"background:#fff;border:2px solid #E5E7EB;padding:10px 14px;border-radius:10px;display:flex;align-items:center;gap:8px;\"><span style=\"font-size:16px;\">\u2713<\/span><span style=\"font-size:13px;color:#374151;font-weight:600;\">decoration-danger (rojo)<\/span><\/div>\n<div style=\"background:#fff;border:2px solid #E5E7EB;padding:10px 14px;border-radius:10px;display:flex;align-items:center;gap:8px;\"><span style=\"font-size:16px;\">\ud83d\udccc<\/span><span style=\"font-size:13px;color:#374151;font-weight:600;\">decoration-success (verde)<\/span><\/div>\n<div style=\"background:#fff;border:2px solid #E5E7EB;padding:10px 14px;border-radius:10px;display:flex;align-items:center;gap:8px;\"><span style=\"font-size:16px;\">\ud83d\udca1<\/span><span style=\"font-size:13px;color:#374151;font-weight:600;\">decoration-info (azul)<\/span><\/div>\n<div style=\"background:#fff;border:2px solid #E5E7EB;padding:10px 14px;border-radius:10px;display:flex;align-items:center;gap:8px;\"><span style=\"font-size:16px;\">\u2699\ufe0f<\/span><span style=\"font-size:13px;color:#374151;font-weight:600;\">decoration-warning (amarillo)<\/span><\/div>\n<\/div>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span><strong>Mostrar el chatter en vista de formulario.<\/strong><\/span><\/h3>\n<p dir=\"auto\" class=\"body\"><span>En Odoo 17, el Chatter (secci\u00f3n de mensajes y seguimiento) se inclu\u00eda con la clase <em>&lt;div class=&#8221;o_chatter&#8221;\/&gt;<\/em>, en Odoo 18, solo se ocupa la etiqueta chatter<em> (chatter\/&gt;).<\/em><\/span><\/p>\n<p dir=\"auto\" class=\"body\"><span>v17:<\/span><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-Yyv0q690E0hay3qb-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span>v18:<\/span><\/h3>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-Awv9Xq9q5MUqW5vx-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span><strong>Ocultar columnas completas en vista lista (Nuevo atributo <em>column_invisible<\/em>)<\/strong><\/span><\/h3>\n<p dir=\"auto\" class=\"body\"><span>Este nuevo atributo oculta tod<\/span><span>a la columna de una vista lista; su empleo es el siguiente.<\/span><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-Aq2JzjMRj6SOGbO6-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span><strong>Eliminaci\u00f3n del Par\u00e1metro states<\/strong><\/span><\/h3>\n<p class=\"body\" dir=\"auto\"><span>En Odoo 17, se usaba <em>states<\/em> para controlar visibilidad seg\u00fan el estado:<\/span><\/p>\n<p class=\"body\" dir=\"auto\"><span>v17:<\/span><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-mjEG0egoJPcZkzoV-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span>Se reemplaz\u00f3 por invisible:<\/span><\/h3>\n<p class=\"body\" dir=\"auto\"><span>v18:<\/span><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/exdoo.mx\/blogs\/wp-content\/uploads\/2026\/05\/blog__11_cambios_en_vistas_odoo_v18-mv0J9zzPz4S08661-2.png\" alt=\"\"  style=\"max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.12);display:block;margin:14px auto;\" \/><\/p>\n<h3 style=\"color:#0A7099;margin-top:24px;\"><span>Odoo 18 moderniz\u00f3 su sintaxis de vistas, haci\u00e9ndola m\u00e1s consistente y flexible. Los principales cambios son:<\/span><\/h3>\n<p dir=\"auto\" class=\"body\"><span>\u00b7 <em>attrs<\/em> \u2192 Atributos directos (readonly, invisible, required).<\/span><\/p>\n<p dir=\"auto\" class=\"body\"><span>\u00b7 <em>tree<\/em> \u2192 <em>list<\/em>.<\/span><\/p>\n<p dir=\"auto\" class=\"body\"><span>\u00b7 <em>colors<\/em> \u2192 decoration-{type}.<\/span><\/p>\n<p dir=\"auto\" class=\"body\"><span>\u00b7 Chatter ahora solo es una etiqueta <em>(&lt;chatter\/&gt;).<\/em><\/span><\/p>\n<p dir=\"auto\" class=\"body\"><span>\u00b7 <em>column_invisible<\/em> para ocultar columnas.<\/span><\/p>\n<p dir=\"auto\" class=\"body\"><span>\u00b7 <em>states<\/em> eliminado ahora se ocupa <em>invisible<\/em>.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Eliminaci\u00f3n del atributo attrs \ud83d\udcd8 ART\u00cdCULO T\u00c9CNICO En Odoo 17, se usaba attrs para definir condiciones de visibilidad (invisible), requeridos (required) y solo lectura (readonly): v17: v18: Soporta\u2026<\/p>\n","protected":false},"author":5,"featured_media":774,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14],"tags":[],"class_list":["post-786","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-development"],"_links":{"self":[{"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/posts\/786","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/comments?post=786"}],"version-history":[{"count":3,"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/posts\/786\/revisions"}],"predecessor-version":[{"id":1987,"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/posts\/786\/revisions\/1987"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/media\/774"}],"wp:attachment":[{"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/media?parent=786"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/categories?post=786"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/exdoo.mx\/blogs\/wp-json\/wp\/v2\/tags?post=786"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}