Procházet zdrojové kódy

Merge pull request #16829 from ankush/deferred_insert_fix

fix: handle dict data in deferred_insert
version-14
Ankush Menat před 3 roky
committed by GitHub
rodič
revize
92fcc7c466
V databázi nebyl nalezen žádný známý klíč pro tento podpis ID GPG klíče: 4AEE18F83AFDEB23
2 změnil soubory, kde provedl 13 přidání a 3 odebrání
  1. +1
    -3
      frappe/deferred_insert.py
  2. +12
    -0
      frappe/tests/test_deferred_insert.py

+ 1
- 3
frappe/deferred_insert.py Zobrazit soubor

@@ -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
- 0
frappe/tests/test_deferred_insert.py Zobrazit soubor

@@ -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))

Načítá se…
Zrušit
Uložit