2016-05-30 13 views
0

In meiner Formularansicht sollte jeder Datensatz ein Symbol mit einer Umleitung auf eine bestimmte Website enthalten. Zum Beispiel:Odoo/Python, wie auf eine Website umgeleitet wird

Datensatz 1 | www.test.com/a

Datensatz 2 | www.test.com/b

Wie ist es möglich, eine solche Umleitung beim Klicken zu erstellen?

habe ich versucht, einen Knopf - aber ich weiß nicht, wie in der Aktion zu umleiten:

<form string="MyForm"> 
       <sheet> 
        <group> 
          <page string="MyPage"> 
           <field name="MyRecords" widget="one2many_list"> 
            <tree string="Records"> 
             <field name="identifier"/> 
             <field name="recordname"/> 
             <button type="object" name="open_record_action" icon="fa-external-link" /> 
            </tree> 
           </field> 
          </page> 
          <page> 
          ... 
          </page> 
        </group> 
        <group> 
        ... 
        </group> 
       </sheet> 

Im Modell:

@api.multi 
    def open_record_action(self, context): 
     ???? 

Auch eine mögliche Lösung wäre, zu speichern, die Verknüpfung in einem Feld im Modell und diese so in der Ansicht zu implementieren:

<field name="url" widget="url"/> 

Aber mit dieser Lösung wird der Link angezeigt. Aber ich möchte nur das Symbol sehen.

Irgendwelche Ideen, wie man löst?

+0

Was benutzen Sie? Was ist '', '', '' usw.? – grochmal

+0

Blatt ist das "Blatt" der Ansicht. Die Seite ist gewissermaßen eine Registerkarte (Sie können zwischen verschiedenen Registerkarten in der Ansicht wechseln). Baum ist nur eine Zusammenfassung der Felder. Sind das nicht nur Standard odoo Begriffe? – sampa

+0

Oh cool, sorry für meinen Mangel an Wissen dort. Ich habe vorgeschlagen, ein 'odoo'/'openerp' anstelle von' hyperlink' zu verwenden. Menschen mit diesem spezifischen Wissen können die Frage leichter finden. – grochmal

Antwort

4

können Sie "ir.actions.act_url" verwenden:

return { 
    'type': 'ir.actions.act_url', 
    'url': '/forum/%s/question/%s' % (self.forum_id.id, self.id), 
    'target': 'self', 
    'res_id': self.id, 
} 

Check website_forum/models/forum.py zum Beispiel.

+0

Danke! Ich habe die folgenden Änderungen vorgenommen: 'URL': "http: // file: /// C: \ Users \ mir \ Desktop \ Bild.jpg", 'Ziel': 'neu', , weil ich will Öffnen Sie eine Datei des Netzlaufwerks im Browser. Es öffnet eine neue Registerkarte und verwendet den Dateipfad als URL. Aber "file: ///" wird automatisch in "file ///" geändert. Es öffnet also das Bild nicht und ich muss das fehlende ":" manuell einfügen. Warum wird das ":" gelöscht und wie wird es repariert? – sampa

+0

soll nicht so funktionieren. Laden Sie die Datei als Anhang hoch und leiten Sie sie weiter. – simahawk

+0

Leider ist das Hochladen keine Lösung für mich – sampa