Managerグループの役割に依存するユーザーを識別できるUI many2one dopdown listを作成する必要があります。Odooエラー:return self.models [model_name] KeyError: 'res_groups_users_rel'
は、今私は、ドロップダウンフィールドがあります。
test = fields.Many2one('res.groups', 'Purchase request type', default=_get_users, track_visibility='onchange')
をそして私は管理者グループの役割に依存するすべてのユーザーを識別できる機能を書き込もうとしました。
def _get_users(self):
pickings = self.env['res_groups_users_rel'].search([('gid','=',61)])
pickings_available = []
for picking in pickings:
pickings_available.append(picking)
return pickings_available
そして、私はエラーました:私はこの機能を変更し、amy2many関係から値を取得する方法がわからない
return self.models[model_name]
KeyError: 'res_groups_users_rel'
を。
私に自分の機能を変更:pickingsにピッキングするため pickings = self.env [ 'res.groups'](61)ブラウザ.users pickings_available = [] :
デフ_get_users(自己)。 : pickings_available.append(ピック) 戻りpickings_available
とフィールド:
テスト= fields.Many2one( 'res.users'、 'いくつかのテキスト'、デフォルト= _get_users、track_visibility = 'のonchange')
私は機能_get_users
をログに記録し、値を取得する:[res.users(9,), res.users(65,)]
をしかし、私はまだ私のテストフィールドのドロップダウンメニューにこれらの値を取得することはできません。私が間違っていることは何ですか?
こんにちは、私は縛ら:pickings = self.env [ 'res.groupsを'] .browse(61).usersしかし、私のテストフィールドからは、フィルタリングせずにすべてのグループを取得しましたが、ユーザーは取得しませんでした。 – fueggit
グループを表示するようにフィールドを指定しました( '' res.groups''モデルを参照するように定義することによって)。グループをフィルタリングする場合は、ドメインを指定する必要があります。ユーザーに表示する場合は、ユーザーモデルを参照するようにしてください。 – dgeorgiev
私の質問を編集しました。私の機能を変更しますが、私はまだ私が望む結果を得ることができません。テストフィールドをtest = fields.Many2one( 'res.users'、 'Some description'、domain = "[( 'groups_id)'、 'in'、[61])])に変更するだけで、 res_users(ctx:)> " – fueggit