OpenERP で新しいモジュールを作成しました。manager と user という 2 つのユーザー グループを作成しました。次に、マネージャーに、自分のプロジェクトの詳細のみにアクセスする必要があることを許可したいと思います。以下のコードをセキュリティ XML ファイルに追加しました。
<record id="property_rule_mat_mgmt_manager" model="ir.rule">
<field name="name">Material Manage Rule</field>
<field model="ir.model" name="model_id" ref="model_project_project"/>
<field name="domain_force">['|',('project_id.members','=',user.id),('project_id.user_id','=',user.id)]</field>
<field name="groups" eval="[(4,ref('group_mat_mgmt_manager')), (4,ref('group_mat_mgmt_user'))]"/>
</record>
しかし、私はこのようなエラーが発生しました
サーバー トレースバック (最新の呼び出しが最後): ファイル "C:\OpenErp\openerp\openerp-web\addons\web\session.py"、91 行目、送信中 return openerp.netsvc.dispatch_rpc(service_name, method, args) ファイル"C:\OpenErp\openerp\openobject-server\openerp\netsvc.py"、361 行目、dispatch_rpc 結果 = ExportService.getService(service_name).dispatch(method, params) ファイル "C:\OpenErp\openerp\openobject- server\openerp\service\web_services.py"、行 582、dispatch security.check(db,uid,passwd) ファイル内 "C:\OpenErp\openerp\openobject-server\openerp\service\security.py"、行 40 、check pool = pooler.get_pool(db) File "C:\OpenErp\openerp\openobject-server\openerp\pooler.py"、50 行目、get_pool で get_db_and_pool(db_name, force_demo, status,update_module)[1] ファイル "C:\OpenErp\openerp\openobject-server\openerp\pooler.py"、33 行目、get_db_and_pool レジストリ = RegistryManager.get(db_name, force_demo, status, update_module, pooljobs) ファイル "C: \OpenErp\openerp\openobject-server\openerp\modules\registry.py"、行 154、get update_module、pooljobs 内) ファイル "C:\OpenErp\openerp\openobject-server\openerp\modules\registry.py"、行176、新しい openerp.modules.load_modules(registry.db、force_demo、status、update_module) ファイル「C:\OpenErp\openerp\openobject-server\openerp\modules\loading.py」、329 行目、load_modules で処理 = load_marked_modules (cr、graph、states_to_load、force、status、report、loading_modules) ファイル "C:\OpenErp\openerp\openobject-server\openerp\modules\loading.py"、244 行目、ファイル "C:\OpenErp\openerp\openobject-server\openerp\modules\loading.py"、180 行目、load_module_graph load_data 内(module_name, idref, mode) ファイル "C:\OpenErp\openerp\openobject-server\openerp\modules\loading.py"、78 行目、load_data = lambda *args: _load_data(cr, *args, kind='data) ') ファイル "C:\OpenErp\openerp\openobject-server\openerp\modules\loading.py"、125 行目、_load_data tools.convert_xml_import(cr, module_name, fp, idref, mode, noupdate, report) ファイル "C :\OpenErp\openerp\openobject-server\openerp\tools\convert.py"、行 955、convert_xml_import obj.parse(doc.getroot()) ファイル"C:\OpenErp\openerp\openobject-server\openerp\tools\convert.py"、848 行目、解析 self._tags[rec.tag](self.cr, rec, n) ファイル "C:\OpenErp\openerp\openobject -server\openerp\tools\convert.py"、806 行、_tag_record 内 f_val = self.id_get(cr, f_ref) ファイル "C:\OpenErp\openerp\openobject-server\openerp\tools\convert.py"、行825、id_get res = self.model_id_get(cr, id_str) ファイル「C:\OpenErp\openerp\openobject-server\openerp\tools\convert.py」、834 行目、model_id_get return model_data_obj.get_object_reference(cr, self. uid, mod, id_str) ファイル "C:\OpenErp\openerp\openobject-server\openerp\tools\cache.py"、18 行目、ルックアップ r = self.lookup(self2, cr, *args) ファイル "C: \OpenErp\openerp\openobject-server\openerp\tools\cache.py"、46 行目、ルックアップ値 = d[key] = self.method(self2, cr, *args) ファイル "C:\OpenErp\openerp\openobject-server\openerp\addons\base\ir\ir_model.py"、857 行目get_object_reference data_id = self._get_id(cr, uid, module, xml_id) ファイル "C:\OpenErp\openerp\openobject-server\openerp\tools\cache.py"、18 行目、ルックアップ r = self.lookup(self2, cr, *args) ファイル "C:\OpenErp\openerp\openobject-server\openerp\tools\cache.py"、46 行目、ルックアップ値 = d[key] = self.method(self2, cr, *args)ファイル "C:\OpenErp\openerp\openobject-server\openerp\addons\base\ir\ir_model.py"、850 行目、_get_id で ValueError('No such external ID currently defined in the system: %s.%s ' % (module, xml_id)) ValueError: 現在システムで定義されている外部 ID はありません: mat_mgmt。model_project_project