Overslaan naar inhoud
Odoo Menu
  • Aanmelden
  • Probeer het gratis
  • Apps
    Financiën
    • Boekhouding
    • Facturatie
    • Onkosten
    • Spreadsheet (BI)
    • Documenten
    • Ondertekenen
    Verkoop
    • CRM
    • Verkoop
    • Kassasysteem winkel
    • Kassasysteem Restaurant
    • Abonnementen
    • Verhuur
    Websites
    • Websitebouwer
    • E-commerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Bevoorradingsketen
    • Voorraad
    • Productie
    • PLM
    • Inkoop
    • Onderhoud
    • Kwaliteit
    Personeelsbeheer
    • Werknemers
    • Werving & Selectie
    • Verlof
    • Evaluaties
    • Aanbevelingen
    • Wagenpark
    Marketing
    • Social media Marketing
    • E-mailmarketing
    • SMS Marketing
    • Evenementen
    • Marketingautomatisering
    • Enquêtes
    Diensten
    • Project
    • Urenstaten
    • Buitendienst
    • Helpdesk
    • Planning
    • Afspraken
    Productiviteit
    • Chat
    • Goedkeuringen
    • IoT
    • VoIP
    • Kennis
    • WhatsApp
    Apps van derden Odoo Studio Odoo Cloud Platform
  • Bedrijfstakken
    Detailhandel
    • Boekhandel
    • kledingwinkel
    • Meubelzaak
    • Supermarkt
    • Bouwmarkt
    • Speelgoedwinkel
    Food & Hospitality
    • Bar en Pub
    • Restaurant
    • Fastfood
    • Gastenverblijf
    • Drankenhandelaar
    • Hotel
    Vastgoed
    • Makelaarskantoor
    • Architectenbureau
    • Bouw
    • Vastgoedbeheer
    • Tuinieren
    • Vereniging van eigenaren
    Consulting
    • Accountantskantoor
    • Odoo Partner
    • Marketingbureau
    • Advocatenkantoor
    • Talentenwerving
    • Audit & Certificering
    Productie
    • Textiel
    • Metaal
    • Meubels
    • Eten
    • Brewery
    • Relatiegeschenken
    Gezondheid & Fitness
    • Sportclub
    • Opticien
    • Fitnesscentrum
    • Wellness-medewerkers
    • Apotheek
    • Kapper
    Trades
    • Klusjesman
    • IT-hardware & support
    • Zonne-energiesystemen
    • Schoenmaker
    • Schoonmaakdiensten
    • HVAC-diensten
    Andere
    • Non-profitorganisatie
    • Milieuagentschap
    • Verhuur van Billboards
    • Fotograaf
    • Fietsleasing
    • Softwareverkoper
    Browse all Industries
  • Community
    Leren
    • Tutorials
    • Documentatie
    • Certificeringen
    • Training
    • Blog
    • Podcast
    Versterk het onderwijs
    • Onderwijs- programma
    • Scale Up! Business Game
    • Bezoek Odoo
    Download de Software
    • Downloaden
    • Vergelijk edities
    • Releases
    Werk samen
    • Github
    • Forum
    • Evenementen
    • Vertalingen
    • Word een Partner
    • Services for Partners
    • Registreer je accountantskantoor
    Diensten
    • Vind een partner
    • Vind een boekhouder
    • Een adviseur ontmoeten
    • Implementatiediensten
    • Klantreferenties
    • Ondersteuning
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Vraag een demo aan
  • Prijzen
  • Help

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Boekhouding
  • Voorraad
  • PoS
  • Project
  • MRP
All apps
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Alle posts Personen Badges
Labels (Bekijk alle)
odoo accounting v14 pos v15
Over dit forum
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Alle posts Personen Badges
Labels (Bekijk alle)
odoo accounting v14 pos v15
Over dit forum
Help

How to create small and medium images in product.product?

Inschrijven

Ontvang een bericht wanneer er activiteit is op deze post

Deze vraag is gerapporteerd
productimagevariantsize
1 Beantwoorden
9991 Weergaven
Avatar
Pascal Tremblay

Hello there,

My post will be long. Don't have the choice. I don't manage to do this.

I have installed the example code of my friend Yenthe :

https://github.com/Yenthe666/Odoo_Samples/tree/master/upload_imagesNow, I'm trying to use this code in product.product and it doesn't work.


In the file openerp/addons/product/product.py :

I have added this code in the product.product class.

class product_product(osv.osv):

        _name = "product.product"

        _description = "Product"

        _inherits = {'product.template': 'product_tmpl_id'}

        _inherit = ['mail.thread']

        _order = 'default_code,name_template'

        def _get_image_variant2(self, cr, uid, ids, name, args, context=None):

                _logger.error("_get_image_variant2")

                result = dict.fromkeys(ids, False)

                for obj in self.browse(cr, uid, ids, context=context):

                        result[obj.id] = tools.image_get_resized_images(obj.image_variant)

                return result

        def _set_image_variant2(self, cr, uid, id, name, value, args, context=None):

                _logger.error("_set_image_variant2")

                return self.write(cr, uid, [id], {'image_variant': tools.image_resize_image_big(value)}, context=context)

        

        'image_variant': fields.binary("Variant Image",

                help="This field holds the image used as image for the product variant, limited to 1024x1024px."),

        'image_variant_medium': fields.function(_get_image_variant2, fnct_inv=_set_image_variant2,

                string="Image variant medium (auto-resized to 128x128):", type="binary", multi="_get_image_variant2",

                store={

                        'product.product': (lambda self, cr, uid, ids, c={}: ids, ['image_variant'], 10),

                },help="Medium-sized image of the category. It is automatically "\

                        "resized as a 128x128px image, with aspect ratio preserved. "\

                        "Use this field in form views or some kanban views."),

        'image_variant_small': fields.function(_get_image_variant2, fnct_inv=_set_image_variant2,

                string="Image variant small (auto-resized to 64x64):", type="binary", multi="_get_image_variant2",

                store={

                        'product.product': (lambda self, cr, uid, ids, c={}: ids, ['image_variant'], 10),

                },

                help="Small-sized image of the category. It is automatically "\

                        "resized as a 64x64px image, with aspect ratio preserved. "\

                        "Use this field anywhere a small image is required.")


In the view product.product_normal_form_view :

I added two new fields.

        <field name="image_variant_small" widget="image" class="oe_avatar oe_left"/>

        <field name="image_variant_medium" widget="image" class="oe_avatar oe_left"/>

See result at the bottom right of this screenshot.


The problem :

When I edit this product.product record, I select a new image in one of these two new fields (image variant small or image variant medium), the image appears. Then, I click on save button. My two new fields stay blank... Like the preview above! Grrr!

Only the original image_medium field changes. The new image only appears there at the top left!

What I do wrong?

Thanks everybody to help! If it miss something in this post, I can add it quickly. Thanks!




Update #1 (january 1, 2016)

See the name of each one of the image fields. I think that each fields have a different name. Is it what it should be?



Update #2 (january 1, 2016)

In the module of Yenthe, upload_images, i have printed the context in the _set_images method when I save a new image :

    context :: {'lang': 'en_US', 'params': {'action': 1827}, 'tz': 'America/Montreal', 'uid': 1}

In the file odoo-8.0-20151003/openerp/addons/product/product.py, I have also printed the context in the _set_image_variant2 method

(see above for this method) when I save a new image in within one of my two new fields of the product.product view above  :

context :: {'lang': 'en_US', 'tz': 'America/Montreal', 'uid': 1, 'active_model': 'product.template', 'params': {'action': 348}, 'search_disable_custom_filters': True, 'search_default_product_tmpl_id': [491], 'active_ids': [491], 'active_id': 491}

What I see special there????  In the context of my new _set_image_variant method, there is an 'active_model' : 'product.template'... Should it not be setted at product.product rather?

May be this is the problem?





1
Avatar
Annuleer
Avatar
Dr Obx
Beste antwoord

Is it not as with the fields ? Only one field can have a value if there is more than one with the same name in one view. Every image must have a  unique field name.


0
Avatar
Annuleer
Pascal Tremblay
Auteur

My post now has an update #1. Thanks for your answer.

Dr Obx

So top two images works fine, only those in right bottom corner won't ?

Pascal Tremblay
Auteur

exactly like you say. I saw something in the log. I update #2 now.

Geniet je van het gesprek? Blijf niet alleen lezen, doe ook mee!

Maak vandaag nog een account aan om te profiteren van exclusieve functies en deel uit te maken van onze geweldige community!

Aanmelden
Gerelateerde posts Antwoorden Weergaven Activiteit
How to put different image on each variant of a product? Opgelost
product image variant different
Avatar
Avatar
5
jan. 16
16567
Is it possible to easily assign one image to multiple product variants?
product variant
Avatar
Avatar
Avatar
Avatar
3
mei 25
2455
Pros and Cons of creating product variants Instantly or Dynamically or Never Opgelost
product variant
Avatar
Avatar
Avatar
Avatar
3
nov. 24
9508
Incorrect Variant Count after importing Newly added Size/color on odoo 17??
sales product variant size colors
Avatar
Avatar
1
sep. 24
1592
Allow selection of multiple values from a single attribute of a product's variant
product variant
Avatar
Avatar
Avatar
3
sep. 24
6764
Community
  • Tutorials
  • Documentatie
  • Forum
Open Source
  • Downloaden
  • Github
  • Runbot
  • Vertalingen
Diensten
  • Odoo.sh Hosting
  • Ondersteuning
  • Upgrade
  • Gepersonaliseerde ontwikkelingen
  • Onderwijs
  • Vind een boekhouder
  • Vind een partner
  • Word een Partner
Over ons
  • Ons bedrijf
  • Merkelementen
  • Neem contact met ons op
  • Vacatures
  • Evenementen
  • Podcast
  • Blog
  • Klanten
  • Juridisch • Privacy
  • Beveiliging
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo is een suite van open source zakelijke apps die aan al je bedrijfsbehoeften voldoet: CRM, E-commerce, boekhouding, inventaris, kassasysteem, projectbeheer, enz.

Odoo's unieke waardepropositie is om tegelijkertijd zeer gebruiksvriendelijk en volledig geïntegreerd te zijn.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now