Siirry sisältöön
Odoo Menu
  • Kirjaudu sisään
  • Kokeile ilmaiseksi
  • Sovellukset
    Talous
    • Kirjanpito
    • Laskutus
    • Kulut
    • Datataulukot (BI)
    • Asiakirjat
    • Allekirjoita
    Myynti
    • CRM
    • Myynti
    • Kassajärjestelmä myymälään
    • Kassajärjestelmä ravintolaan
    • Tilaukset
    • Vuokraus
    Verkkosivut
    • Verkkosivun Rakennustyökalu
    • Verkkokauppa
    • Blogi
    • Foorumi
    • Livechat
    • Verkko-oppiminen
    Toimitusketju
    • Varastointi
    • Tuotanto
    • Tuotteen elinkaaren hallinta (PLM)
    • Ostot
    • Huolto
    • Laatu
    Henkilöstöhallinto
    • Työntekijät
    • Rekrytointi
    • Vapaat
    • Arvioinnit
    • Suositukset
    • Kuljetuskalusto
    Markkinointi
    • Somemarkkinointi
    • Sähköpostimarkkinointi
    • Tekstiviestimarkkinointi
    • Tapahtumat
    • Markkinoinnin automaatio
    • Kyselyt
    Palvelut
    • Projekti
    • Työaikakirjaukset
    • Kenttähuolto
    • Asiakaspalvelu
    • Suunnittelu
    • Ajanvaraukset
    Tuottavuus
    • Viestintä
    • Hyväksynnät
    • IoT
    • IP-puhe
    • Tietokirjasto
    • WhatsApp
    Kolmannen osapuolen sovellukset Odoo-Studio Odoo-Pilvialusta
  • Toimialat
    Vähittäiskauppa
    • Kirjakauppa
    • Vaatekauppa
    • Huonekaluliike
    • Ruokakauppa
    • Laitteistokauppa
    • Lelukauppa
    Ruoka & Majoitus
    • Baari ja Pubi
    • Ravintola
    • Pikaruoka
    • Majatalo
    • Juomien jakelija
    • Hotelli
    Kiinteistöt
    • Kiinteistönvälitystoimisto
    • Arkkitehtitoimisto
    • Rakentaminen
    • Kiinteistönhallinta
    • Puutarhanhoito
    • Kiinteistön omistajien yhdistys
    Konsultointi
    • Tilitoimisto
    • Odoo-kumppani
    • Markkinointitoimisto
    • Lakitoimisto
    • Osaajahankinta
    • Tilintarkastus & sertifiointi
    Tuotanto
    • Tekstiili
    • Metalli
    • Huonekalut
    • Ruoka
    • Panimo
    • Yrityslahjat
    Terveys & Liikunta
    • Urheiluseura
    • Silmälasiliike
    • Kuntokeskus
    • Hyvinvointialan ammattilaiset
    • Apteekki
    • Kampaamo
    Kaupat
    • Yleismies
    • IT-laitteisto & Tuki
    • Aurinkoenergiajärjestelmät
    • Suutari
    • Siivouspalvelut
    • LVI-palvelut
    Muut
    • Voittoa tavoittelematon järjestö
    • Ympäristötoimisto
    • Mainostaulujen vuokraus  
    • Valokuvaus
    • Leasing-pyörät
    • Ohjelmistojen jälleenmyyjä
    Selaa kaikkia toimialoja
  • Yhteisö
    Opi
    • Kurssit
    • Dokumentaatio
    • Todistukset
    • Koulutus
    • Blogi
    • Podcast
    Kannusta kouluttautumaan
    • Koulutusohjelmat
    • Scale Up! Liiketoimintapeli
    • Vieraile Odoolla
    Hanki ohjelmisto
    • Lataa
    • Vertaile versioita
    • Julkaisut
    Tee yhteistyötä
    • Github
    • Foorumi
    • Tapahtumat
    • Käännökset
    • Ryhdy kumppaniksi
    • Kumppanipalvelut
    • Rekisteröi tilitoimistosi
    Hanki palveluja
    • Löydä kumppani
    • Löydä kirjanpitäjä
    • Varaa asiantuntijatapaaminen
    • Implementaatiopalvelut
    • Asiakasreferenssit
    • Tuki
    • Versionkorotukset
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Varaa demo
  • Hinnoittelu
  • Asiakaspalvelu

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

  • CRM
  • e-Commerce
  • Kirjanpito
  • Varastointi
  • PoS
  • Projekti
  • MRP
All apps
Sinun on rekisteröidyttävä, jotta voit olla vuorovaikutuksessa yhteisön kanssa.
Kaikki kirjoitukset Ihmiset Merkit
Tunnisteet (Näytä kaikki)
odoo accounting v14 pos v15
Tietoa tästä foorumista
Sinun on rekisteröidyttävä, jotta voit olla vuorovaikutuksessa yhteisön kanssa.
Kaikki kirjoitukset Ihmiset Merkit
Tunnisteet (Näytä kaikki)
odoo accounting v14 pos v15
Tietoa tästä foorumista
Apua

Error "Contacts require a name" creating a user with custom module

Tilaa

Saat ilmoituksen, kun tähän viestiin ilmaantuu aktiviteettia

Tämä kysymys on merkitty
erroruserscreateinheritsres.users
2 Vastaukset
17832 Näkymät
Avatar
Daniel

I´m writing a custom module that had models that inherits from res.users to create custom users with some new filds.
I´m using delegation inheritance type to have another table for the fields of my custom users.
The schema is similar to: res.partner-->res.users-->custom_users.
I named the custom users "progenitor_tutor". I can access fields of res.users and res.partners like email or login from my custom view, but the problem is that when I´m trying to create a new custom user from the custom user view, a pop up appears and says:

Odoo Server Error - Validation Error

Contacts require a name.

And the res.partner, res.users, and progenitor_tutor (the custom user) datas are not created.
This is the code of my custom view and the custom model:

------------------------

<?xml version="1.0" encoding="UTF-8"?>
<odoo>

<!--Tree View of progenitor_tutor-->
<recordmodel="ir.ui.view"id="progenitor_tutor_tree_view">
<fieldname="name">progenitor_tutor.tree.view</field>
<fieldname="model">aula10.progenitor_tutor</field>
<fieldname="arch"type="xml">
<treestring="progenitor_tutor">
<fieldname="name"/>
<fieldname="login"/>
</tree>
</field>
</record>

<!--Form View of progenitor_tutor-->
<recordmodel="ir.ui.view"id="progenitor_tutor_form_view">
<fieldname="name">progenitor_tutor.form.view</field>
<fieldname="model">aula10.progenitor_tutor</field>
<fieldname="arch"type="xml">
<form>
  <sheet>
<fieldname="id"invisible="1"/>
<divclass="oe_button_box"name="button_box">
<buttonname="toggle_active"type="object"class="oe_stat_button"icon="fa-check">
<fieldname="active"widget="boolean_button"options='{"terminology": "active"}'/>
</button>
</div>
<fieldname="image"widget='image'class="oe_avatar"options='{"preview_image": "image_medium"}'/>
<divclass="oe_title">
<labelfor="name"class="oe_edit_only"/>
<h1><fieldname="name"required="1"/></h1>
<fieldname="email"invisible="1"/>
<labelfor="login"class="oe_edit_only"string="Email Address"/>
<h2><fieldname="login"/></h2>
<group>
<fieldname="partner_id"readonly="1"required="0"groups="base.group_no_one"
attrs="{'invisible': [('id', '=', False)]}"/>
</group>
</div>
<notebookcolspan="4">
<pagename="access_rights"string="Access Rights">
<groupstring="Multi Companies"attrs="{'invisible': [('companies_count', '&lt;=', 1)]}">
<fieldstring="Allowed Companies"name="company_ids"widget="many2many_tags"/>
<fieldstring="Current Company"name="company_id"context="{'user_preference': 0}"/>
<fieldstring="Companies count"name="companies_count"invisible="1"/>
</group>
<fieldname="groups_id"/>
</page>
<pagestring="Preferences">
<group>
<groupstring="Localization"name="preferences">
<fieldname="lang"/>
<fieldname="tz"widget="timezone_mismatch"options="{'tz_offset_field': 'tz_offset'}"/>
<fieldname="tz_offset"invisible="1"/>
</group>
<groupstring="Menus Customization"groups="base.group_no_one">
<fieldname="action_id"/>
</group>
</group>
<groupstring="Messaging and Social"name="messaging">
<fieldname="signature"/>
</group>
</page>
</notebook>
</sheet>
</form>
</field>
</record>

<!--Action of progenitor_tutor-->
<recordmodel="ir.actions.act_window"id="progenitor_tutor_action">
<fieldname="name">Padres/Tutores</field>
<fieldname="res_model">aula10.progenitor_tutor</field>
<fieldname="view_type">form</field>
<fieldname="view_mode">tree,form</field>
</record>

<!--Menu-->
<menuitemname="Padres/Tutores"id="progenitor_tutor"action="progenitor_tutor_action"/>

</odoo>

---------------------------

from odoo import models, fields, api
#from odoo.exceptions import ValidationError
class progenitor_tutor(models.Model):
_name = 'aula10.progenitor_tutor'
_inherits = {'res.users': 'usuario_id'}
usuario_id = fields.Many2one('res.users', required=True, ondelete='restrict', auto_join=True, string='Usuario relacionado', help='Partner-related data of the user')
name = fields.Char('Nombre',required=True)
0
Avatar
Hylkää
Hilar Andikkadavath

format your code

Avatar
Martin Varela
Paras vastaus

The problem is that you are adding a field "name" in your new model. When you save the record, the name you type in the form is the one in 'aula10.progenitor_tutor' and not the one in res.partner, wich is required.
In the python file, remove:

name = fields.Char('Nombre',required=True)
Then you will use the one in res.partner, as res.users does.

-1
Avatar
Hylkää
Nautitko keskustelusta? Älä vain lue, vaan osallistu!

Luo tili jo tänään nauttiaksesi yksinoikeusominaisuuksista ja osallistuaksesi mahtavaan yhteisöömme!

Rekisteröidy
Aiheeseen liittyviä artikkeleita Vastaukset Näkymät Toimenpide
How to properly create a large amount of users?
create res.users
Avatar
Avatar
Avatar
2
marrask. 21
5107
Private Address option when I create a new user
users create
Avatar
Avatar
1
syysk. 20
6161
Access rights tab layout in res.users is changed to tree view. Ratkaistu
users res.users v14
Avatar
Avatar
Avatar
2
heinäk. 25
5532
Error Findings
invoice error create
Avatar
0
marrask. 23
2044
Can not create an CRM application
crm error create
Avatar
Avatar
1
maalisk. 22
2600
Yhteisö
  • Kurssit
  • Dokumentaatio
  • Foorumi
Avoin lähdekoodi
  • Lataa
  • Github
  • Runbot
  • Käännökset
Palvelut
  • Odoo.sh hosting
  • Tuki
  • Versionkorotus
  • Räätälöidyt kehitykset
  • Koulutus
  • Löydä kirjanpitäjä
  • Löydä kumppani
  • Ryhdy kumppaniksi
Meistä
  • Yrityksemme
  • Brändiominaisuudet
  • Ota yhteyttä
  • Työpaikat
  • Tapahtumat
  • Podcast
  • Blogi
  • Asiakkaat
  • Oikeudellinen ilmoitus • Yksityisyys
  • Tietoturva
الْعَرَبيّة 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 on kokoelma avoimen lähdekoodin yrityssovelluksia, jotka kattavat kaikki yrityksesi tarpeet: asiakkuudenhallinta eli CRM, verkkokauppa, kirjanpito, varastointi, kassajärjestelmä, projektinhallinta, jne.

Odoon uniikki arvolupaus on olla samanaikaisesti erittäin helppokäyttöinen ja täysin integroitu.

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