This commit aims to simplify the evaluation context used to
evaluate expressions used in views (invisible, required, readonly,
domain and context attributes). For now, the evaluation context is
typically the current record (there's a key for each field in the
view). In addition to that, there're static keys (that may conflict
with field names): uid, allowed_company_ids, current_company_id,
active_id, active_ids and active_model.
The motivation of this commit is at some point to get rid of the
3 active_* keys, because they are misleading and basically useless.
The notion of active_* exists, but it is something else: when you
are in a form view (let's say the form of a partner) and you open
its opportunities (by clicking on the stat button), the list view
of opportunies shows up and in the context, there're 3 keys
active_*, referring to the record from which we came. One can
easily access those information with context.get("active_*"), in
python or in view archs.
However, almost all `active_id` found in archs were actually used
to refer to the id of the current record. Indeed, for now, in the
evaluation context of a record, the value of the `active_id` key is
always the id of the record. So this commit adapts them to
directly use `id` instead. There was no use of active_ids, and
a single use of active_model which was removed (active_model is
the res_model of the view, so it isn't really necessary).
This commit doesn't drop the support of those keys, it deprecates
them. They will be removed for v18. A warning will be displayed if
they are used.
closes odoo/odoo#136665
Related: odoo/enterprise#47917
Signed-off-by: Raphael Collet <rco@odoo.com>
Odoo e-Commerce
Optimize sales with an awesome online store.
Odoo is an Open Source eCommerce unlike anything you have ever seen before. Get an awesome catalog of products and great product description pages.
It's full-featured, integrated with your management software, fully customizable and super easy.
Create Awesome Product Pages
Odoo's unique 'edit inline' and building blocks approach makes product pages creation surprisingly easy. "Want to change the price of a product? or put it in bold? Want to add a banner for a specific product?" just click and change. What you see is what you get. Really.
Drag & Drop well designed 'Building Blocks' to create beautifull product pages that your customer will love.
Increase Your Revenue Per Order
The built-in cross-selling feature helps you offer extra products related to what the shopper put in his cart. (e.g. accessories)
Odoo's upselling algorythm allows you to show visitors similar but more expensive products than the one in view, with incentives.
The inline editing feature allows you to easily change a price, launch a promotion or fine tune the description of a product, in a just a click.
A Clean Google Analytics Integration
Get a clear visibility of your sales funnel. Odoo's Google Analytics trackers are configured by default to track all kind of events related to shopping carts, call-to-actions, etc.
As Odoo marketing tools (mass mailing, campaigns, etc) are also linked with Google Analytics, you get a complete view of your business.
Target New Markets
Get your website translated in multiple languages with no effort. Odoo proposes and propagates translations automatically across pages.
Our translation "on demand" features allows you to benefit from professional translators to translate all your changes automatically. Just change any part of your website (a new blog post, a page modification, product descriptions, ...) and the translated versions are updated automatically in around 32 hours.
Fine Tune Your Catalog
Get full control on how you display your products in the catalog page: promotional ribbons, related size of products, discounts, variants, grid/list view, etc.
Edit any product inline to make your website evolve with your customer need.
Acquire New Customers
SEO tools are ready to use, with no configuration required. Odoo suggests keywords according to Google most searched terms, Google Analytics tracks your shopping cart events, sitemap are created automatically for Google indexation, etc.
We even do structured content automatically to promote your product and events efficiently in Google.
Leverage Social Media
Create new landing pages easily with the Odoo inline editing feature. Send visitors of your different marketing campaigns to specific landing pages to optimize conversions.
Manage a Reseller Network
Manage a reseller network to target new market, have local presences or broaden your distribution. Give them access to your reseller portal for an efficient collaboration.
Promote your resellers online, forward leads to resellers (with built-in geolocalisation feature), define specific pricelists, launch a loyalty program (offer specific discounts to your best customers or resellers), etc.
Benefit from the power of Odoo, in your online store: a powerfull tax engine, flexible pricing structures, a real inventory management solution, a reseller interface, support for products with different behaviours; physical goods, events, services, variants and options, etc.
You don't need to interface with your warehouse, sales or accounting software. Everything is integrated with Odoo. No pain, real time.
A Clean Checkout Process
Convert most visitor interests into real orders with a clean checkout process with a minimal number of steps and a great useability on every page.
Customize your checkout process to fit your business needs: payment modes, delivery methods, cross-selling, special conditions, etc.
And much more...
Online Sales
- Mobile Interface
- Sell products, events or services
- Flexible pricelists
- Product multi-variants
- Multiple stores
- Great checkout process
Customer Service
- Customer Portal to track orders
- Assisted shopping with website live chats
- Returns management
- Advanced shipping rules
- Coupons or gift certificates
Order Management
- Advanced warehouse management features
- Invoicing and accounting integration
- Mass mailing and customer segmentations
- Lead automation and marketing campaigns
- Persistent shopping cart
Fully Integrated With Other Apps
CMS
Easily create awesome websites with no technical knowledge required.
Blog
Write news, attract new visitors, build customer loyalty.
Online Events
Schedule, organize, promote or sell events online; conferences, webinars, trainings, etc.