I want to make a module that change the email_from in some scenarios when i click "Send a message" in social. I try inherit from mail.message to override _get_default_from but i can't. Anybody can help me?
Thanks a lot.
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
I want to make a module that change the email_from in some scenarios when i click "Send a message" in social. I try inherit from mail.message to override _get_default_from but i can't. Anybody can help me?
Thanks a lot.
Hi,
override create or default_get function:
from openerp.osv import orm
class MailMessage(orm.Model):
_inherit = 'mail.message'
def _update_email_from(self, cr, uid, message_id, context=None):
email_from = ....
self.write(cr, uid, [message_id], {'email_from': email_from}, context=context)
def create(self, cr, uid, vals, context=None):
context = dict(context or {})
message_id = super(MailMessage, self).create(cr, uid, vals, context=context)
self._update_email_from(cr, uid, message_id, context=context)
return message_id
Bye
That is was i tried but i have this error. Mail is installed and mail.message exits...
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 177, in run_wsgi
execute(self.server.app)
File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 165, in execute
application_iter = app(environ, start_response)
File "/opt/odoo/openerp/service/server.py", line 281, in app
return self.app(e, s)
File "/opt/odoo/openerp/service/wsgi_server.py", line 216, in application
return application_unproxied(environ, start_response)
File "/opt/odoo/openerp/service/wsgi_server.py", line 202, in application_unproxied
result = handler(environ, start_response)
File "/opt/odoo/openerp/http.py", line 1280, in __call__
return self.dispatch(environ, start_response)
File "/opt/odoo/openerp/http.py", line 1254, in __call__
return self.app(environ, start_wrapped)
File "/usr/lib/python2.7/dist-packages/werkzeug/wsgi.py", line 588, in __call__
return self.app(environ, start_response)
File "/opt/odoo/openerp/http.py", line 1412, in dispatch
ir_http = request.registry['ir.http']
File "/opt/odoo/openerp/http.py", line 339, in registry
return openerp.modules.registry.RegistryManager.get(self.db) if self.db else None
File "/opt/odoo/openerp/modules/registry.py", line 335, in get
update_module)
File "/opt/odoo/openerp/modules/registry.py", line 366, in new
openerp.modules.load_modules(registry._db, force_demo, status, update_module)
File "/opt/odoo/openerp/modules/loading.py", line 351, in load_modules
force, status, report, loaded_modules, update_module)
File "/opt/odoo/openerp/modules/loading.py", line 255, in load_marked_modules
loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
File "/opt/odoo/openerp/modules/loading.py", line 152, in load_module_graph
models = registry.load(cr, package)
File "/opt/odoo/openerp/modules/registry.py", line 162, in load
model = cls._build_model(self, cr)
File "/opt/odoo/openerp/models.py", line 592, in _build_model
original_module = pool[name]._original_module if name in parents else cls._module
File "/opt/odoo/openerp/modules/registry.py", line 101, in __getitem__
return self.models[model_name]
KeyError: 'mail.message'
Just now, your code:
from openerp.osv import orm
class MailMessage(orm.Model):
_inherit = 'mail.message'
def _update_email_from(self, cr, uid, message_id, context=None):
email_from = 'test@example.dom'
self.write(cr, uid, [message_id], {'email_from': email_from}, context=context)
def create(self, cr, uid, vals, context=None):
context = dict(context or {})
message_id = super(MailMessage, self).create(cr, uid, vals, context=context)
self._update_email_from(cr, uid, message_id, context=context)
return message_id
do you have in __opener__py module email in depends section and verify in log when you restart your openerp server if the module email is well installed. Else I don't know where is the problem ...
Finally works... a stupid misspelling. Thanks
Tạo tài khoản ngay hôm nay để tận hưởng các tính năng độc đáo và tham gia cộng đồng tuyệt vời của chúng tôi!
Đăng kýBài viết liên quan | Trả lời | Lượt xem | Hoạt động | |
---|---|---|---|---|
|
0
thg 3 15
|
3665 | ||
|
1
thg 8 25
|
1510 | ||
|
1
thg 5 25
|
1222 | ||
|
2
thg 5 25
|
1339 | ||
|
0
thg 4 25
|
1089 |