2017-06-04 8 views
0

私は動的ビューを作成しようとしているので、私はPython側でビューを作成したいと思います。しかし、私がビューを保存しようとすると、 "arch_base"フィールドは設定されません。誰かが私に問題点を教えてくれますか?ここに私の関数であるPythonサイドで拡張フォームビューを作成するには?

@api.onchange('field_id') 
def create_validation_button(self): 
    model = self.field_id.model_id.model 
    model_view = self.env['ir.ui.view'].search([("model", "=", model), ('type', "=", "form")]) 
    arch = '<xpath expr="//header" postition="inside"><button string="Add Followers" type="object" name="add_project_followers" /></xpath>' 
    if model_view: 
     self.view_id = None 
     self.env['ir.ui.view'].search(
      [("model", "=", model), ('name', "=", 'validation.' + model_view.name)]).unlink() 
     view_data = {'name': 'validation.' + model_view.name, 'type': 'form', 'model': model, 'priority': 1, 
        'inherit_id': model_view.id, 
        'mode': 'extension', 
        'arch_base': arch.encode('utf-8')} 
     view = self.env["ir.ui.view"].create(view_data) 
     self.view_id = view 
+0

へようこそへ

view_data = {'name': 'validation.' + model_view.name, 'type': 'form', 'model': model, 'priority': 1, 'inherit_id': model_view.id, 'mode': 'extension', 'arch': arch.encode('utf-8')} 

感謝スタックオーバーフロー低い。 [ツアー](https://stackoverflow.com/tour)と[質問](https://stackoverflow.com/help/asking)をご覧ください。 – Shiro

+0

ダイナミックビューで何をしようとしていますか? XMLでビューを作成するだけではどうですか?さらに、 'add_project_followers'メソッドで実行されるコードを含めることができますか? – travisw

+0

ユーザーが選択したビューに検証ボタンを作成します。この時点で、 'add_project_followers'が何かをコンソールに表示しているとしましょう。 'create_validation_button'が実行されると、ビューは作成されて親に割り当てられますが、' arch_base'だけが設定されません。 – segito10

答えて

関連する問題