Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
1 Rispondi
535 Visualizzazioni
I have written following code to add chatter feature for each student record. There are 3 records in the student table but it showing only one chatter section and all three names it showing output like follows:
John Doe
<Here chatter section displayed only once>
Jane smith
<chatter section displayed excepted to display but not displayed >
Alice Bob
<chatter section displayed excepted to display not displayed>

<t t-foreach="students" t-as="student">

          <t t-if="student">

                  <div class="chat">

                          <t t-esc="student.student_name"/>

                          <t t-call="portal.message_thread">

                                 <t t-set="object" t-value="student"/>

                           </t>

                    </div>  

           </t>

       </t>

 </div>

Please tell me the solution so it show the chatter functionality for three times as the names are displayed and also why it is showing the chatter section for one time only.

Avatar
Abbandona
Risposta migliore

Hi

The problem is related to how the portal message thread works in Odoo. When you use t-call="portal.message_thread" multiple times in the same view, it only renders once because of how Odoo's chatter component is designed.

You need to ensure each chatter has a unique ID. The message thread component needs to be able to distinguish between different record threads.

Modify your code to include a unique identifier for each chatter section:

<t t-foreach="students" t-as="student">
    <t t-if="student">
        <div class="chat">
            <t t-esc="student.student_name"/>
            <div t-attf-id="discussion_thread_#{student.id}" class="mt-4">
                <t t-call="portal.message_thread">
                    <t t-set="object" t-value="student"/>
                </t>
            </div>
        </div>
    </t>
</t>
The key improvement in this version compared to your original code is the addition of the unique ID attribute (t-attf-id="discussion_thread_#{student.id}"). This creates a distinct container for each chatter with a unique identifier based on the student's ID, which helps Odoo properly initialize and render multiple chatter components on the same page.

Regards

Jishna

Accurates

Avatar
Abbandona
Post correlati Risposte Visualizzazioni Attività
2
apr 25
514
0
lug 23
2226
0
giu 23
1815
0
nov 21
999
0
nov 16
3787