El viernes, 2 de octubre de 2015, 16:50:07 (UTC+1), Antonio Roncero
escribió:
>
>
>
> El viernes, 2 de octubre de 2015, 9:31:39 (UTC+1), Jesús Martín Jiménez
> escribió:
>>
>> Hola Antonio,
>>
>> El 2 de octubre de 2015, 10:29, Antonio Roncero <[email protected]>
>> escribió:
>>
>>> Hola, sigo probando...
>>>
>>> ¿Cual es la forma de añadir un boton a un arbol que abra el registro
>>> asociado a un campo reference?, es decir,
>>>
>>> tengo un modelo con un campo tipo Reference, me gustaria que la vista
>>> arbol de este modelo hubiera un boton que abriera el registro asociado, por
>>> ejemplo, el id 5 del modelo party.party. O cambiar el funcionmiento por
>>> defecto del doble click para que en lugar de cambiar de tipo de vista (a
>>> vista formulario del registro) abriera el registro asociado del campo
>>> reference.
>>>
>>
>> Tal vez te sirva de ejemplo la apertura de cantidad de productos que se
>> abre desde las ubicaciones.
>>
>>
>
> Gracias, le he echado un vistazo y no es exactamente lo que quiero.
>
> Estoy mirando la documentacion y entiendo que es esto:
>
> button
> <http://doc.tryton.org/3.2/trytond/doc/topics/views/index.html#button>
>
> Display a button.
>
>
> -
>
> string: The string that will be displayed inside the button.
> -
>
> name: The name of the function that will be called. The function must
> have this syntax:
>
> button(cls, records)
>
> The function may return an ir.action id ...
>
> pero estoy intentando devolver el ir.action y no me funciona (tambien es
> cierto que lo estoy haciendo al estilo openerp y segurametne no sea asi)
> Tambien he intentado, basandome
> en @ModelView.button_action('modelo.action_id'), hacer el return del mismo
> modo 'modelo.action_id' y no hace nada
> ¿Donde puedo ver un ejemplo de una funcion que devuelva un
> ir.action.act_window ?
>
Ya funciona (Gracias Pokoli), el motivo era que aunque
@ModelView.button_action recibe directamente el xml_id de la accion, la
funcion decorada por @ModelView.button debe devolver el id (entero) de la
accion por lo que hay que usar Pool().get('ir.model.data').get_id('modulo',
'accion_xml_id')
>
>
>>> Gracias
>>>
>>
>>
>>
>> --
>>
>> Jesús Martín
>>
>> Zikzakmedia SL
>> C/ de Sant Jaume, 9, baixos, 2ª
>> 08720 Vilafranca del Penedès
>> ☏ 93 890 21 08
>>
>