Odoo10, Webshop "Game changer" Nr.1 - Blacklists
Im Odoo10 Webshop sind wichtige "Game change", die man bei der Implementation der Anpassung im Webshop beauchten muss .
- Neue Felder, die man in seinem Modul implementiert, sind by default im Frontend nicht unterstützt und man kann deren Werte nicht speichern oder per HTTP-POST senden.
Odoo10 arbeitet nämlich intern mit einer Blacklist auf der immer neue Felder landen ! Dafür ist die Funktion _get_form_writable_fields() im Kern zuständig.
Auf der Datenbankebene sieht es so aus. In diesem Fall sehen wir hier unsere Felder, um die wir die Tabelle res_partner erweitert haben - Damit man diese Felder auch im Frontend verwenden kann, muss man sie explizit auf eine Whitelist setzen. Dazu dient XML-Datei, die man im Unterverzeichnis \data\ speichern muss. Die Struktur sieh so aus:
In diesem Beispiel haben wir die Felder (title, eq_firstname und eq_house_no) der Tabelle res.partner auf Whitelist gesetzt. Die Datei mit diesem Beispiel ist HIER.
Nun kann man endlich diese Felder auch im Frontend verwenden und deren Wert POSTen und speichern.