Openerp 7拒绝访问文档类型:消息,操作:创建
与管理员用户我可以做一切,添加,删除,修改等,因为它应该是。 当我添加电子邮件配置良好的新用户时(可以在openerp消息模块上发送和接收电子邮件),但当我调用我的功能从我的自定义模块发送电子邮件时:Openerp 7拒绝访问文档类型:消息,操作:创建,openerp,Openerp,与管理员用户我可以做一切,添加,删除,修改等,因为它应该是。 当我添加电子邮件配置良好的新用户时(可以在openerp消息模块上发送和接收电子邮件),但当我调用我的功能从我的自定义模块发送电子邮件时: <button name="send_email" string="Notifier Participants" states="open" type="object" icon="gtk-jump-to"/> 我的职能: def send_email(self, cr, u
<button name="send_email" string="Notifier Participants" states="open" type="object" icon="gtk-jump-to"/>
我的职能:
def send_email(self, cr, uid, ids, context=None):
res_id=''
objects_review = self.browse(cr, uid, ids, context=context)
for object_review in objects_review:
participant_names=''
for user_id in object_review.user_ids:
participant_names += '<tr><td>'+user_id.name+'<td></tr>'
email_template_obj = self.pool.get('email.template')
template_ids = email_template_obj.search(cr, uid, [], context=context)
if template_ids:
current_user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
values = email_template_obj.generate_email(cr, uid, template_ids[0], ids, context=context)
values['subject'] = object_review.name
values['email_from'] = current_user.email
values['email_to'] = object_review.participant_emails
values['body_html'] = 'Bonjour, </br> Convocation à la revue
:</br> <table><tr><td>Revue :
</td>'+'<td>'+str(object_review.name)+'</td></tr><tr>
<td>Référence</td><td>'+str(object_review.reference)+'</td>
</tr><tr><td>Date de la Revue</td>
<td>'+str(object_review.date)+'</td></tr><tr><td>
Lieu de la Revue</td><td>'+str(object_review.lieu)+'
</td></tr><tr><td>Type de la Revue</td>
<td>'+str(object_review.type.name)+'</td></tr><tr><table>
<th>Participants</th>'+participant_names+'</table></tr>
<tr><td>Object :</td><td>'+str(object_review.objet)
or ''+'</td></tr></table>'
values['body'] = '<table><tr><td> </td></tr></table>'
values['res_id'] = False
mail_mail_obj = self.pool.get('mail.mail')
msg_id = mail_mail_obj.create(cr, uid, values, context=context)
mail_mail_obj.send(cr, uid, [msg_id], context=context)
#email_template_obj.send_mail(cr, uid, template_ids[0], ids[0], force_send=True, context=context)
return True
def发送电子邮件(self、cr、uid、id、context=None):
res_id=“”
对象\u review=self.browse(cr、uid、ID、context=context)
对于对象检查中的对象检查:
参与者名称=“”
对于对象\u review.user\u id中的用户\u id:
参与者姓名+=''+用户id.姓名+''
email\u template\u obj=self.pool.get('email.template')
模板\u id=email\u模板\u对象搜索(cr,uid,[],context=context)
如果模板ID为:
当前用户=self.pool.get('res.users')。浏览(cr、uid、uid、context=context)
value=email\u template\u obj.generate\u email(cr,uid,template\u id[0],id,context=context)
值['subject']=object\u review.name
值['email\u from']=当前用户.email
值['email\u to']=对象\u审查。参与者\u电子邮件
值['body_html']='Bonjour,revue会议
:评论:
“+”+str(object_review.name)+”
Référence'+str(object_review.reference)+'
评论日期
“+str(object_review.date)+”
修订版“+str(object_review.liue)+”
评论类型
“+str(object_review.type.name)+”
参与者“+参与者姓名+”
对象:'+str(Object_review.objet)
或“+”
值['body']=''
值['res_id']=False
mail\u mail\u obj=self.pool.get('mail.mail')
msg\u id=mail\u mail\u obj.create(cr,uid,值,context=context)
邮件发送(cr,uid,[msg\U id],context=context)
#email\u template\u obj.send\u mail(cr,uid,template\u id[0],id[0],force\u send=True,context=context)
返回真值
我得到了这个错误:
{'body':u'你好,\n\n\n',附件':[],'attachment\u id':[],“自动删除”:True,“电子邮件收件人”:False,“正文”:你好,会议\xe0 la revue:revue:dfR\xe9f\xe9rence/001/2015Date de la Revue2015-09-16 14:57:32 RevueFalseType de la RevueneParticipant管理者对象:False”,“邮件服务器id”:False,“电子邮件收件人”:uadmin@example.com“,”回复到“:错误,”电子邮件抄送“:错误,'model':u'document.page.history,'res_id':False,'email_from':u'echange。nad@gmail.com“,”主题“:u'df'}
2015-09-16 14:59:57552 5688警告tist openerp.osv.orm:模型邮件中没有此类字段。邮件:附件,电子邮件收件人。
2015-09-16 14:59:57564 5688错误tist openerp.netsvc:访问被拒绝
由于安全限制,无法完成请求的操作。请与您的系统管理员联系
(文档类型:消息,操作:创建)
回溯(最近一次呼叫最后一次):
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/netsvc.py”,第306行,在dispatch_rpc中
结果=ExportService.getService(服务名称).dispatch(方法,参数)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/service/web_services.py”,第632行,在分派中
res=fn(db,uid,*params)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/osv/osv.py”,第190行,在execute_kw中
返回self.execute(db、uid、obj、method、*args、**kw或{})
包装器中的文件“/home/nadia/barid/server2/openerp15-9-15/openerp/osv/osv.py”,第132行
返回f(self、dbname、*args、**kwargs)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/osv/osv.py”,第199行,在execute中
res=self.execute\u cr(cr,uid,obj,method,*args,**kw)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/addons/audittrail/audittrail.py”,第532行,在execute\u cr中
返回fct_src(cr、uid、模型、方法、*args、**kw)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/osv/osv.py”,第187行,在execute\u cr中
返回getattr(对象、方法)(cr、uid、*args、**kw)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/addons/mgmtsystem\u review/mgmtsystem\u review.py”,第129行,发送电子邮件
msg\u id=mail\u mail\u obj.create(cr,uid,值,context=context)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/addons/fetchmail/fetchmail.py”,第305行,在create中
res=super(mail\u-mail,self).创建(cr,uid,值,context=context)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/addons/mail/mail_mail.py”,第93行,在create中
返回super(mail\u mail,self).create(cr,uid,value,context=context)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/osv/orm.py”,第4489行,在create中
record\u id=self.pool.get(table).create(cr,user,tocreate[table],context=parent\u context)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/addons/mail/mail_message.py”,第754行,在create中
newid=super(邮件、消息、自我)。创建(cr、uid、值、上下文)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/osv/orm.py”,第4615行,在create中
self.check\u access\u规则(cr,用户,[id\u new],'create',context=context)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/addons/portal/mail\u message.py”,检查访问规则第63行
返回超级(邮件、消息、自我)。检查访问规则(cr、uid、ids=ids、operation=operation、context=context)
文件“/home/nadia/barid/server2/openerp15-9-15/openerp/addons/mail/mail\u message.py”,第744行,检查访问规则
(自我描述、操作)
除_osv外:(u'Access Denied',u'由于安全限制,请求的操作无法完成。请与系统管理员联系。\n\n(文档类型:Message,操作:create)')
我使用了send_mail功能而不是send,我也遇到了同样的问题
因此,我在model mail.message上创建了一个规则:
<record id="mes_email_rule" model="ir.rule">
<field name="name">Email send</field>
<field name="model_id" ref="mail.model_mail_message"/>
<field name="domain_force">[(1,'=',1)]</field>
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
<field eval="True" name="perm_unlink"/>
<field eval="True" name="perm_write"/>
<field eval="True" name="perm_read"/>
<field eval="True" name="perm_create"/>
电子邮件发送
[(1,'=',1)]