Skip to Content
Odoo मेन्यू
  • Sign in
  • मुफ़्त में आज़माएं
  • ऐप्लिकेशन
    फ़ाइनेंस
    • अकाउंटिंग
    • इनवॉइसिंग
    • एक्सपेंस
    • स्प्रेडशीट (बीआई)
    • डॉक्यूमेंट्स
    • साइन
    सेल्स
    • सीआरएम
    • सेल्स
    • पीओएस शॉप
    • पीओएस रेस्टोरेंट
    • सब्सक्रिप्शन
    • रेंटल
    वेबसाइट
    • वेबसाइट बिल्डर
    • ई-कॉमर्स
    • ब्लॉग
    • फ़ोरम
    • लाइव चैट
    • ई-लर्निंग
    सप्लाई चेन
    • इन्वेंट्री
    • मैन्युफ़ैक्चरिंग
    • पीएलएम
    • परचेज़
    • मेंटेनेंस
    • क्वालिटी
    मानव संसाधन
    • कर्मचारी
    • रिक्रूटमेंट
    • टाइम ऑफ़
    • अप्रेज़ल
    • रेफ़रल
    • फ़्लीट
    मार्केटिंग
    • सोशल मार्केटिंग
    • ईमेल मार्केटिंग
    • एसएमएस मार्केटिंग
    • इवेंट
    • मार्केटिंग ऑटोमेशन
    • सर्वे
    सेवाएं
    • प्रोजेक्ट
    • टाइमशीट
    • फ़ील्ड सर्विस
    • हेल्पडेस्क
    • प्लानिंग
    • अपॉइंटमेंट
    प्रॉडक्टिविटी
    • डिस्कस
    • अप्रूवल
    • आईओटी
    • वीओआईपी
    • नॉलेज
    • WhatsApp
    तीसरे पक्ष के ऐप्लिकेशन Odoo स्टूडियो Odoo क्लाउड प्लेटफ़ॉर्म
  • इंडस्ट्री
    रीटेल
    • बुक स्टोर
    • क्लोदिंग स्टोर
    • फ़र्नीचर स्टोर
    • ग्रॉसरी स्टोर
    • हार्डवेयर स्टोर
    • टॉय स्टोर
    Food & Hospitality
    • बार और पब
    • रेस्टोरेंट
    • फ़ास्ट फ़ूड
    • Guest House
    • बेवरिज डिस्ट्रीब्यूटर
    • होटल
    रियल एस्टेट
    • Real Estate Agency
    • आर्किटेक्चर फ़र्म
    • कंसट्रक्शन
    • एस्टेट मैनेजमेंट
    • गार्ड्निंग
    • प्रॉपर्टी ओनर असोसिएशन
    कंसल्टिंग
    • अकाउंटिंग फ़र्म
    • Odoo पार्टनर
    • मार्केटिंग एजेंसी
    • लॉ फ़र्म
    • टैलेंट ऐक्विज़िशन
    • ऑडिट & सर्टिफ़िकेशन
    मैन्युफ़ैक्चरिंग
    • टेक्सटाइल
    • Metal
    • फ़र्नीचर
    • फ़ूड
    • Brewery
    • कॉर्पोरेट गिफ़्ट
    हेल्थ & फिटनेस
    • स्पोर्ट्स क्लब
    • आईवियर स्टोर
    • फिटनेस सेंटर
    • वेलनेस प्रैक्टिशनर
    • फॉर्मेसी
    • हेयर सैलून
    Trades
    • Handyman
    • आईटी हॉर्डवेयर और सपोर्ट
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    अन्य
    • Nonprofit Organization
    • एन्वायरमेंटल एजेंसी
    • बिलबोर्ड रेंटल
    • फ़ोटोग्राफी
    • बाइक लीजिंग
    • सॉफ़्टवेयर रीसेलर
    Browse all Industries
  • कम्यूनिटी
    सीखें
    • ट्यूटोरियल्स
    • दस्तावेज़
    • सर्टिफ़िकेशन
    • ट्रेनिंग
    • ब्लॉग
    • पॉडकास्ट
    शिक्षा को बढ़ावा दें
    • एजुकेशन प्रोग्राम
    • स्केल अप! बिजनेस गेम
    • Odoo के ऑफ़िस में आएं
    सॉफ़्टवेयर पाएं
    • डाउनलोड
    • वर्शन की तुलना करें
    • रिलीज़
    साथ मिलकर काम करें
    • Github
    • फ़ोरम
    • इवेंट
    • अनुवाद
    • पार्टनर बनें
    • Services for Partners
    • अपना अकाउंटिंग फ़र्म रजिस्टर करें
    सेवाएं पाएं
    • पार्टनर ढूंढें
    • अकाउंटेंट खोजें
    • सलाहकार की मदद लें
    • इम्प्लिमेंटेशन सेवाएं
    • कस्टमर रेफ़रेंस
    • सहायता
    • अपग्रेड
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    डेमो देखें
  • कीमत
  • सहायता

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

  • सीआरएम
  • e-Commerce
  • लेखांकन
  • इन्वेंटरी
  • PoS
  • प्रोजेक्ट
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
टैग (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
टैग (View all)
odoo accounting v14 pos v15
About this forum
Help

Odoo 9 oe_chatter in custom module

Subscribe

Get notified when there's activity on this post

This question has been flagged
mailcustom moduleodoo9
5 Replies
7822 Views
Avatar
David Todd

Right, so this was probably asked a bunch of times (\like here) , but I'm trying to get the chatter in my custom module.

in my models.py, I have _inherit like below

_inherit = ['mail.thread', 'ir.needaction_mixin']

 At the bottom of my form inside views.xml, I have this

</sheet>
</form>
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
<field name="message_ids" widget="mail_thread">
</div>

Finally inside __openerp__.py, I have this

'depends': ['base', 'mail'],

The chatter still does not appear, I have even tried putting it inside the sheet and even using sheet position="after" to no avail. That just creates a white box with nothing in it.


Any help would be greatly appreciated.

0
Avatar
Discard
David Todd
Author

(Can't edit my question, just says 403 forbidden...)

EDIT:

If I open my custom module inside Chrome's inspector, I can see the oe_chatter div. In the same div however, I also see the class o_form_invisible.

In the web.assest_backend.0.css file, ".o_form_invisible" simply sets "display: none !important;"

If I remove the class from the div element (and also from the div containing o_followers), the chatter appears and functions correctly. Refreshing the page will make Odoo apply that class again to these elements.

How can I prevent odoo from applying the o_form_invisible class to the chatter elements?

Avatar
Deepa Venkatesh
Best Answer

Everything you have done is correct, except for view definition

Place the oe_chatter div inside form, but after the sheet, hence your code should like this

    </sheet>
    <div class="oe_chatter">
        <field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
        <field name="message_ids" widget="mail_thread">
    </div>
</form>


Further if you just need the Chatter box, then ''mail.thread' alone is enough, 

However if you need notification on unread messages on the List/Tree view then use ''ir.needaction_mixin', along with the associated field 'message_unread' in the Tree View, something like below

<tree fonts="bold:message_unread==True" string="TREE VIEW">                    
    <field name="message_unread" invisible="1"/>


Hope this helps you.

2
Avatar
Discard
David Todd
Author

Hello Deep,

I've tried as you suggested and my view now looks like yours and I get the same result. I should have mentioned this in my OP, but I was pressed for time and only had a few minutes to write it.

I have already tried having it inside the form element and outside. I've even put it inside the main sheet, but after the closing notebook tag.

However, I just used the inspector and saw that the o_chatter div also had a class of o_form_invisible.

If I remove that, the chatter appears (and if I remove o_form_invisible from o_followers, the follower buttons also appear) and I can log messages.

When the page is refreshed, it will again have that class. Would you know how to prevent odoo from applying the class?

Deepa Venkatesh

Hmmmm, not sure what could have gone wrong in the first place... but good to see that you have found a fix.. :)

Avatar
David Todd
Author Best Answer

I found a solution, but it's incredibly ungraceful and may impact more than just this module.

Inside your view (or if you are already loading CSS files), do something similar to below

<form string="Test">
<style>
.openerp .o_form_invisible { display: block !important; }
</style>
// The rest of your form
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
<field name="message_ids" widget="mail_thread"/>
</div>
</form>

This is not optimal because it may override other things that should be marked invisible and it forces use of !important for every future override that needs to be done with this class.

Manually adding a different class to show the element will not work as CSS rules are evaluated on a "What was added last" basis, and o_form_invisible gets added after any manually added classes.

0
Avatar
Discard
David Todd
Author

Yes this solution does not fully work. It will show other fields that must be in the form, but are designed to be hidden from the user.

Applying the hidden class will not work because of the previous override

Avatar
Qutechs, Ahmed M.Elmubarak
Best Answer

Hi, try to put it after the sheet closing and before the form closing :

                    </sheet> 
    <div class="oe_chatter">
        <field name="message_follower_ids" widget="mail_followers"/>
        <field name="message_ids" widget="mail_thread"/>
    </div>
</form>
0
Avatar
Discard
Enjoying the discussion? Don't just read, join in!

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

Sign up
Related Posts Replies Views Activity
remove followers from recipient ids mail compose wizard
mail compose odoo9
Avatar
0
फ़र॰ 18
5003
How to code an email message in Odoo 9 with python? Solved
mail mailbox odoo9
Avatar
1
अप्रैल 16
5047
Improve massmail Speed.
performance mail mass_mailing odoo9
Avatar
Avatar
3
अग॰ 17
4143
<( Servicio al pasajero)||¿Cómo hablar directamente en Volaris?
mail
Avatar
0
अक्तू॰ 25
574
Emails to Microsoft Outlook/Hotmail are rejected
mail
Avatar
1
अक्तू॰ 25
833
कम्यूनिटी
  • ट्यूटोरियल्स
  • दस्तावेज़
  • फ़ोरम
ओपन सोर्स
  • डाउनलोड
  • Github
  • रनबॉट
  • अनुवाद
सेवाएं
  • Odoo.sh Hosting
  • सहायता
  • अपग्रेड
  • कस्टम डेवलपमेंट्स
  • शिक्षा
  • अकाउंटेंट खोजें
  • पार्टनर ढूंढें
  • पार्टनर बनें
हमारे बारे में
  • हमारी कंपनी
  • ब्रांड ऐसेट
  • संपर्क करें
  • नौकरियां
  • इवेंट
  • पॉडकास्ट
  • ब्लॉग
  • ग्राहक
  • लीगल • गोपनीयता
  • सुरक्षा
الْعَرَبيّة 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, बिज़नेस से जुड़े ऐप्लिकेशन का एक कलेक्शन है जो ओपन सोर्स पर आधारित है. इसमें आपकी कंपनी की हर ज़रूरत के लिए ऐप्लिकेशन हैं. जैसे, सीआरएम, ई-कॉमर्स, अकाउंटिंग, इन्वेंट्री, पॉइंट ऑफ़ सेल, प्रोजेक्ट मैनेजमेंट वगैरह.

Odoo की सबसे बड़ी खासियत है कि यह इस्तेमाल करने में बहुत आसान है और यह पूरी तरह से इंटिग्रेट किया हुआ है.

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