Bài học thuộc :
Odoo tip
Trạng thái bài học :
Chưa hoàn thành
Thiết lập và sử dụng context trong mẫu email gửi đi
Bài này tôi giới thiệu cách thức sử dụng hoặc tùy biến “context” (ngữ cảnh) trong các mẫu email gửi đi (email template) trong odoo.
Giả sử bạn muốn gửi một email có một vài thông tin mà chúng không được lưu trữ trong đối tượng của email.
Bình thường trong một mẫu email bạn chỉ cần viết:
${object.name}
Nếu viết như trên, khi email được render, chỗ đó sẽ có giá trị của trường “name”.
Trong file controllers/main.py
local_context = request.env.context.copy()
Trong file module.py
local_context = self.env.context.copy() local_context.update({ 'name': 'Shiv', 'place': 'Bangalore' }) template = request.env.ref('module_name.email_template_id') template.with_context(local_context).send_mail(object.id, force_send=True, raise_exception=True)
Trong email template code bạn truy xuất vào context như sau:
<p>${ctx['name']}</p> <p>${ctx['place']}</p>
Nguồn: http://www.odoo.yenthevg.com/creating-mail-templates/