2016-06-01 15 views
1

Ich mag action Taste Dropdown-Menü mit adding oder deleting die Untermenü in stock.move class (oder Exportfunktion aus) ändern, aber ich kann nicht den Platz in xml finden, wo Schaltfläche beschrieben wird "action" mit "export" und "delete" Dropdown-Menü. Wie ich es verstehe, muss es Rekordmodell = "ir.actions.act_window" und in tree Ansicht sein.Odoo 9 Wo finde ich die Dropdown-Taste für die Aktionsschaltfläche in stock.move xml?

ich über dieses Menü spreche:

http://www.part.lt/img/thumb/5ca9481df84ab612afc0ccacb2f25581446.png

ich diese xml ist aus Kern stock addon haben:

<record id="act_product_stock_move_open" model="ir.actions.act_window"> 
     <field name="context">{'search_default_product_id': active_id, 'default_product_id': active_id}</field> 
     <field name="name">Moves</field> 
     <field name="res_model">stock.move</field> 
     <field name="view_id" ref="stock.view_move_tree"/> 
    </record> 

    <record id="action_move_form2" model="ir.actions.act_window"> 
     <field name="name">Stock Moves</field> 
     <field name="res_model">stock.move</field> 
     <field name="type">ir.actions.act_window</field> 
     <field name="view_type">form</field> 
     <field name="view_id" ref="view_move_tree"/> 
     <field name="search_view_id" ref="view_move_search"/> 
     <field name="context">{}</field> 
     <field name="help" type="html"> 
      <p class="oe_view_nocontent_create"> 
      Click to create a stock movement. 
      </p><p> 
      This menu gives you the full traceability of inventory 
      operations on a specific product. You can filter on the product 
      to see all the past or future movements for the product. 
      </p> 
     </field> 
    </record> 

    <record model="ir.actions.act_window.view" id="action_stock_move_tree_all"> 
     <field name="sequence" eval="1"/> 
     <field name="view_mode">tree</field> 
     <field name="view_id" ref="view_move_tree"/> 
     <field name="act_window_id" ref="action_move_form2"/> 
    </record> 

    <record model="ir.actions.act_window.view" id="action_stock_move_form_all"> 
     <field name="sequence" eval="3"/> 
     <field name="view_mode">form</field> 
     <field name="view_id" ref="view_move_form"/> 
    <field name="act_window_id" ref="action_move_form2"/> 
    </record> 

<record model="ir.actions.act_window.view" id="action_stock_move_graph_all"> 
    <field name="sequence" eval="3"/> 
    <field name="view_mode">graph</field> 
    <field name="view_id" ref="view_move_graph"/> 
    <field name="act_window_id" ref="action_move_form2"/> 
</record> 

Vielleicht nicht an der richtigen Stelle suche ich?

Antwort

1

base.xml (bei addons/Web/static/src/xml/base.xml) haben FieldBinaryFileUploader die den Controller nennen /web/binary/upload_attachment (bei addons/web/Controller/main.py)

<t t-name="FieldBinaryFileUploader"> 
    <div t-att-style="widget.node.attrs.style" t-attf-class="oe_fileupload #{widget.node.attrs.class ? widget.node.attrs.class :''}"> 
     <div class="oe_placeholder_files"/> 
     <div class="oe_add" t-if="!widget.get('effective_readonly')"> 
      <!-- uploader of file --> 
      <button class="oe_attach"><i class="fa fa-paperclip"/></button> 
      <span class='oe_attach_label'><t t-esc="widget.string"/></span> 
      <t t-call="HiddenInputFile"> 
       <t t-set="fileupload_id" t-value="widget.fileupload_id"/> 
       <t t-set="fileupload_action" t-translation="off">/web/binary/upload_attachment</t> 
       <input type="hidden" name="model" t-att-value="widget.view.model"/> 
       <input type="hidden" name="id" value="0"/> 
       <input type="hidden" name="session_id" t-att-value="widget.session.session_id" t-if="widget.session.override_session"/> 
      </t> 
     </div> 
    </div> 
</t> 

editiert: Für neue Wertschöpfung in Option

einen Rekord von model="ir.values" in xML erstellen und legen Sie die stock.move in <field name="model"> und erstellen Sie die Aktion

<record id="my_module.my_new_action_stock_move" model="ir.actions.server">

ODER

<record id="my_module.my_new_action_stock_move" model="ir.actions.act_window">

für die Onclick Handlungs Handhabung

Beispielcode ir.values ​​wie folgt:

<record model="ir.values" id="my_module.model_stock_move_values"> 
    <field name="model_id" ref="stock.model_stock_move" /> 
    <field name="name">My Options</field> 
    <field name="key2">client_action_multi</field> 
    <field name="value" eval="'ir.actions.act_window,'+str(ref('my_module.my_new_action_stock_move'))" /> 
    <field name="key">action</field> 
    <field name="model">stock.move</field> 
</record> 

Hoffnung diese Referenz zu verstehen helfen kann wie Exportarbeit.

+0

Vielen Dank. Also, wenn ich eine weitere Funktion zum Dropdown-Menü "Aktion" in der stock.move-Klasse hinzufügen möchte, muss ich stock.xml mit ir.actions.act_window neu schreiben? – fueggit

+0

Ich habe meine Antwort aktualisiert. Bearbeitet: Zum Hinzufügen eines neuen Wertes in der Option – prakash