Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
1 ตอบกลับ
2623 มุมมอง

I'm trying to create a new invoice in controller:


request.env['account.move'].sudo().create([
{
'move_type': 'out_invoice',
'journal_id': 1,
'invoice_date': '2020-01-10',
'invoice_line_ids': [(0, 0, {'product_id': 21, 'price_unit': 1000.0})],
}])

But i got this error 
Expected singleton: res.users()

Please help, thanks.
อวตาร
ละทิ้ง
ผู้เขียน คำตอบที่ดีที่สุด

I've found the answer with the help of my leader, here it is:

This issue is because we missing "self.env.user", to do this, we must add .with_user(SUPERUSER_ID) after model call.

Example:



from odoo import SUPERUSER_ID

request.env['account.move'].with_user(SUPERUSER_ID).sudo().create([
{
'move_type': 'out_invoice',
'journal_id': 1,
'invoice_date': '2020-01-10',
'invoice_line_ids': [(0, 0, {'product_id': 21, 'price_unit': 1000.0})],
}])
อวตาร
ละทิ้ง
Related Posts ตอบกลับ มุมมอง กิจกรรม
2
ม.ค. 23
4715
1
มิ.ย. 22
3019
1
พ.ค. 22
3344
1
ธ.ค. 21
2643
4
มี.ค. 25
50979