Hi, I want to delete the records in the one2many fields when the original record that had them is deleted. I tried adding ondelete="cascade" to the one2many declaration but the records in the one2many table still remains when i delete the record holding it. How do i achieve this?
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Contabilidad
- Inventario
- PoS
- Project
- MRP
Se marcó esta pregunta
1
Responder
32668
Vistas
Hi,
You should put ondelete="cascade"
in the field relation id like here:
class sale_order(osv.osv):
_name = 'sale.order'
_columns = {
'name': fields.char('Order Reference', size=64, required=True, readonly=True, states={'draft': [('readonly', False)], 'sent': [('readonly', False)]}, select=True),
'order_line': fields.one2many('sale.order.line', 'order_id', 'Order Lines', readonly=True, states={'draft': [('readonly', False)], 'sent': [('readonly', False)]}),
....
sale_order()
class sale_order_line(osv.osv):
_name = 'sale.order.line'
_columns = {
'order_id': fields.many2one('sale.order', 'Order Reference', required=True, ondelete='cascade', select=True, readonly=True, states={'draft':[('readonly',False)]}),
.
.
.
sale_order_line()
Thanks, i was doing it the other way round. Now it solved the problem
¿Le interesa esta conversación? ¡Participe en ella!
Cree una cuenta para poder utilizar funciones exclusivas e interactuar con la comunidad.
InscribirsePublicaciones relacionadas | Respuestas | Vistas | Actividad | |
---|---|---|---|---|
|
0
mar 15
|
3242 | ||
|
2
may 24
|
9193 | ||
Confirm on delete one2many line
Resuelto
|
|
5
jul 20
|
10695 | |
How to delete Confirmed Salary Slip?
Resuelto
|
|
5
ene 24
|
17097 | |
|
0
sept 15
|
3877 |