Merge pull request #16829 from ankush/deferred_insert_fix
fix: handle dict data in deferred_insert
This commit is contained in:
commit
92fcc7c466
2 changed files with 13 additions and 3 deletions
|
|
@ -42,12 +42,10 @@ def save_to_db():
|
|||
record_count += 1
|
||||
insert_record(record, doctype)
|
||||
|
||||
frappe.db.commit()
|
||||
|
||||
|
||||
def insert_record(record: Union[Dict, "Document"], doctype: str):
|
||||
setattr(record, "doctype", doctype)
|
||||
try:
|
||||
record.update({"doctype": doctype})
|
||||
frappe.get_doc(record).insert()
|
||||
except Exception as e:
|
||||
frappe.logger().error(f"Error while inserting deferred {doctype} record: {e}")
|
||||
|
|
|
|||
12
frappe/tests/test_deferred_insert.py
Normal file
12
frappe/tests/test_deferred_insert.py
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
import frappe
|
||||
from frappe.deferred_insert import deferred_insert, save_to_db
|
||||
from frappe.tests.utils import FrappeTestCase
|
||||
|
||||
|
||||
class TestDeferredInsert(FrappeTestCase):
|
||||
def test_deferred_insert(self):
|
||||
route_history = {"route": frappe.generate_hash(), "user": "Administrator"}
|
||||
deferred_insert("Route History", [route_history])
|
||||
|
||||
save_to_db()
|
||||
self.assertTrue(frappe.db.exists("Route History", route_history))
|
||||
Loading…
Add table
Reference in a new issue