Skip to Content
Odoo Menu
  • Log ind
  • Prøv gratis
  • Apps
    Økonomi
    • Bogføring
    • Fakturering
    • Udgifter
    • Regneark (BI)
    • Dokumenter
    • e-Signatur
    Salg
    • CRM
    • Salg
    • POS Butik
    • POS Restaurant
    • Abonnementer
    • Udlejning
    Hjemmeside
    • Hjemmesidebygger
    • e-Handel
    • Blog
    • Forum
    • LiveChat
    • e-Læring
    Forsyningskæde
    • Lagerbeholdning
    • Produktion
    • PLM
    • Indkøb
    • Vedligeholdelse
    • Kvalitet
    HR
    • Medarbejdere
    • Rekruttering
    • Fravær
    • Medarbejdersamtaler
    • Anbefalinger
    • Flåde
    Marketing
    • Markedsføring på sociale medier
    • E-mailmarketing
    • SMS-marketing
    • Arrangementer
    • Automatiseret marketing
    • Spørgeundersøgelser
    Tjenester
    • Projekt
    • Timesedler
    • Udkørende Service
    • Kundeservice
    • Planlægning
    • Aftaler
    Produktivitet
    • Dialog
    • Godkendelser
    • IoT
    • VoIP
    • Vidensdeling
    • WhatsApp
    Tredjepartsapps Odoo Studio Odoo Cloud-platform
  • Brancher
    Detailhandel
    • Boghandel
    • Tøjforretning
    • Møbelforretning
    • Dagligvarebutik
    • Byggemarked
    • Legetøjsforretning
    Mad og værtsskab
    • Bar og pub
    • Restaurant
    • Fastfood
    • Gæstehus
    • Drikkevareforhandler
    • Hotel
    Ejendom
    • Ejendomsmægler
    • Arkitektfirma
    • Byggeri
    • Ejendomsadministration
    • Havearbejde
    • Boligejerforening
    Rådgivning
    • Regnskabsfirma
    • Odoo-partner
    • Marketingbureau
    • Advokatfirma
    • Rekruttering
    • Audit & certificering
    Produktion
    • Tekstil
    • Metal
    • Møbler
    • Fødevareproduktion
    • Bryggeri
    • Firmagave
    Heldbred & Fitness
    • Sportsklub
    • Optiker
    • Fitnesscenter
    • Kosmetolog
    • Apotek
    • Frisør
    Håndværk
    • Handyman
    • IT-hardware og support
    • Solenergisystemer
    • Skomager
    • Rengøringsservicer
    • VVS- og ventilationsservice
    Andet
    • Nonprofitorganisation
    • Miljøagentur
    • Udlejning af billboards
    • Fotografi
    • Cykeludlejning
    • Softwareforhandler
    Gennemse alle brancher
  • Community
    Få mere at vide
    • Tutorials
    • Dokumentation
    • Certificeringer
    • Oplæring
    • Blog
    • Podcast
    Bliv klogere
    • Udannelselsesprogram
    • Scale Up!-virksomhedsspillet
    • Besøg Odoo
    Få softwaren
    • Download
    • Sammenlign versioner
    • Udgaver
    Samarbejde
    • Github
    • Forum
    • Arrangementer
    • Oversættelser
    • Bliv partner
    • Tjenester til partnere
    • Registrér dit regnskabsfirma
    Modtag tjenester
    • Find en partner
    • Find en bogholder
    • Kontakt en rådgiver
    • Implementeringstjenester
    • Kundereferencer
    • Support
    • Opgraderinger
    Github Youtube Twitter LinkedIn Instagram Facebook Spotify
    +1 (650) 691-3277
    Få en demo
  • Prissætning
  • Hjælp

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

  • CRM
  • e-Commerce
  • Bogføring
  • Lager
  • PoS
  • Projekt
  • MRP
All apps
Du skal være registreret for at interagere med fællesskabet.
All Posts People Emblemer
Tags (View all)
odoo accounting v14 pos v15
Om dette forum
Du skal være registreret for at interagere med fællesskabet.
All Posts People Emblemer
Tags (View all)
odoo accounting v14 pos v15
Om dette forum
Hjælp

my wizards function getting 2 arguments instead of 1

Tilmeld

Få besked, når der er aktivitet på dette indlæg

Dette spørgsmål er blevet anmeldt
functionwizardproductsarguments
1 Svar
2475 Visninger
Avatar
Alan finiti

Hello i'm making a wizard to add multiples allergens to multiples products.

I'm using odoo 17.

The wizard opens, the products selected before the wizard appear are automatically selected BUT when i want to apply one or more allergen to one or more product i have an error stating that my function inside my wizard takes only 1 argument, which is true, but got 2 arguments and i dont know why. If someone can help me it would be wonderful !


here is my wizard codes :


​Python :


from odoo import models, fields, api


class ProductAllergenWizard(models.TransientModel):

    _name = 'product.allergen.wizard'


    product_ids = fields.Many2many(

        comodel_name='product.template',

        string='Products',

        inverse_name = "allergen_category_ids"

    )

    allergen_ids = fields.Many2many(

        string = "Allergen Category",

        comodel_name="allergen_category.category",

        inverse_name="products_ids",

    )


    @api.model

    def default_get(self, fields):

        defaults = super(ProductAllergenWizard, self).default_get(fields)

        product_ids = self._context.get('default_product_ids')

        if product_ids:

            defaults['product_ids'] = product_ids

        return defaults


    @api.model

    def add_product_allergen(self):

        for record in self:

            if record.product_ids and record.allergen_ids:

                for product in record.product_ids:

                    for allergen in record.allergen_ids:

                        product.allergen_ids += allergen





​xml :



   

        product.wizard.form

        product.allergen.wizard

       

           

               

                   

                       

                       

                   

               

               

                   

                   

               

           

       

   


   

        product.wizard.form

        product.allergen.wizard

        form

        new

       

   



And here is the error if it can help to solve the problem :


TypeError: ProductAllergenWizard.add_product_allergen() takes 1 positional argument but 2 were given

0
Avatar
Kassér
Ahmad Khan

Hello,

Remove @api.model and try it hope it will work
def add_product_allergen(self):
for record in self:
if record.product_ids and record.allergen_ids:
for product in record.product_ids:
for allergen in record.allergen_ids:
product.allergen_ids += allergen

Avatar
Sreeraj Raghu
Bedste svar

Hello,

Remove @api.model and write @api.multi

0
Avatar
Kassér
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Tilmeld dig
Related Posts Besvarelser Visninger Aktivitet
How to change current record id to call a function
function wizard record_id
Avatar
0
aug. 21
162
How can I call python function from javascript in odoo 11? Løst
function wizard odoo11.0
Avatar
Avatar
Avatar
Avatar
5
maj 20
19416
I don't understand the arguments of a function. Løst
function arguments odoo8.0
Avatar
Avatar
1
jun. 16
4509
Function for Wizard ???
function wizard date
Avatar
0
mar. 15
4051
Function for Wizard ???
function wizard date
Avatar
0
mar. 15
4645
Community
  • Tutorials
  • Dokumentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Oversættelser
Tjenester
  • Odoo.sh-hosting
  • Support
  • Opgradere
  • Individuelt tilpasset udvikling
  • Uddannelse
  • Find en bogholder
  • Find en partner
  • Bliv partner
Om os
  • Vores virksomhed
  • Brandaktiver
  • Kontakt os
  • Stillinger
  • Arrangementer
  • Podcast
  • Blog
  • Kunder
  • Juridiske dokumenter • Privatlivspolitik
  • Sikkerhedspolitik
الْعَرَبيّة 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 er en samling open source-forretningsapps, der dækker alle dine virksomhedsbehov – lige fra CRM, e-handel og bogføring til lagerstyring, POS, projektledelse og meget mere.

Det unikke ved Odoo er, at systemet både er brugervenligt og fuldt integreret.

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