跳至内容
菜单
此问题已终结

Hi,


I need to show one field of the tree view in a modal window so as to edit it conveniently rather than jumbling up in the Tree View. The code seems to run good, but "return action" does not open the form. What must I be doing wrong? Below is my code -


XML code - View


        <record id="view_edithtml_description" model="ir.ui.view">

            <field name="name">purchase.order.line.form</field>

            <field name="model">purchase.order.line</field>

            <field name="type">form</field>

            <field name="arch" type="xml">

                <form string="Edit Description">

<!--                    <group colspan="4" >  -->

                        <field name="description" widget="html"/>

<!--                    </group>  -->

               </form>

            </field>

        </record>


XML Code - Button


<button name="edit_description" string="Edit description" type="object" icon="fa-magic"/>



Python Code:


@api.one

    def edit_description(self):

        self.description = self.name

        view_id = self.env.ref('fmcg_purchase.view_edithtml_description').id

        context = self._context.copy()

        my_view = {

            'name': 'view_edithtml_description',

            'view_type': 'form',

            'view_mode': 'form',

            'views': [(view_id, 'form')],

            'res_model': 'purchase.order.line',

            'view_id': view_id,

            'type': 'ir.actions.act_window',

            'res_id': self.id,

            'target': 'new',

            'context': context,

        }

        return my_view


I checked the values of my_view and everything appears as appropriate. However, the form doesn't open. I am using Odoo v11 CE

形象
丢弃
最佳答案

Hello

use @api.multi instead of @api.one

for eg. 

@api.multi

def edit_description(self):

    # here your code

形象
丢弃
编写者 最佳答案

Hi Mitu,

That is simply genius. Yes. It worked.

The only other problem I notice is that the data inside the "description" field is not getting saved when I click the "Save" button on the modal form. If I reopen the same row again, the changes are lost. Can you point on what could be the reason?

形象
丢弃

there are many things: (1) if the field is readonly and that field value is coming from the onchange of the another value. (2) into the form/tree view, by mistake define that field multiple times. also this is the possibility.

编写者

Hi Mitul, thanks again for responding to my question. Actually, neither is the case. This field is a new field I created in my module. Not readonly, no compute, onchange methods, also, the code I shared is the only place it appears in my XML.

相关帖文 回复 查看 活动
2
9月 23
8090
1
5月 19
6389
3
10月 18
19530
1
10月 16
10694
4
12月 23
13421