Score:0

อัปเดตฟิลด์โดยไม่ต้องบันทึกโหนด

ธง ve

ฉันเป็นผู้เริ่มต้นใน Drupal ฉันต้องการแทรกค่าลงในฟิลด์โหนด แต่แทนที่จะเป็น node->save() ฉันต้องการหลีกเลี่ยง presave hook และแทรกโดยตรงโดยใช้แบบสอบถาม sql ฉันมี entity_id ที่จะแทรกในคอลัมน์ field_NAME_value ด้วย นี่คือรหัสโหนดหรือไม่ หรือฉันจะได้รับสิ่งนี้ได้อย่างไร หรือมีวิธีการบันทึกโหนดโดยไม่ต้องเรียก presave หรือไม่ ขอบคุณ

cn flag
ด้วยความเคารพอย่างสูงสุด หากคุณจำเป็นต้องถาม (เช่น ไม่สามารถหาคำตอบ/หยั่งรู้ได้) ว่าคอลัมน์ในตารางเหล่านี้คืออะไร คุณอาจจะต้องจบลงด้วยการทำลายบางสิ่งด้วยการจัดการฐานข้อมูลด้วยตนเอง มันอาจจะช่วยให้ปัญหาของคุณอยู่ในหัวและอธิบายว่ามีอะไรผิดปกติกับตะขอพรีเซฟที่ทำงานตั้งแต่แรก คุณอาจหยุดพฤติกรรมนั้นแทนได้ด้วยวิธีที่หรูหราและรองรับอนาคต
Jaypan avatar
de flag
ฉันต้องเห็นด้วยกับไคลฟ์ สิ่งนี้เป็นอันตราย เป็นแนวทางปฏิบัติที่ไม่ดี และข้ามการตรวจสอบ API ทำไมคุณไม่ต้องการบันทึกโหนด
jacksparrow avatar
ve flag
@Clive ขอบคุณทุกคน จริง ๆ แล้วฉันมีการทำงานแบบแบตช์ (มากกว่า 20,000 โหนด) ซึ่งหมดเวลา มีบาง hook presaves ที่ถูกเรียกและกระบวนการทั้งหมดช้า ดังนั้นเพื่อเพิ่มความเร็ว ฉันอยากลองและอัปเดต db โดยตรงซึ่งจะทำให้สิ่งต่าง ๆ เร็วขึ้น .
cn flag
ฉันอยากจะยอมรับว่าแบทช์จะช้าและดูที่การแบ่งมันออกเป็นชิ้นเล็ก ๆ แทน - คุณไม่ควรหมดเวลาเรียกใช้แบทช์ op นั่นเป็นเหตุผลว่าทำไมจึงมีอยู่ตั้งแต่แรก หากคุณทำให้จำนวนโหนดต่อ op น้อยลง คุณอาจพบว่ากระบวนการทั้งหมดทำงานเร็วขึ้นโดยรวม อย่างไรก็ตาม คุณจะใช้ทรัพยากรไม่มากเท่าต่อคำขอ
jacksparrow avatar
ve flag
@Clive ขอบคุณสำหรับความคิดของคุณ มันมีประโยชน์ เมื่อรันแบทช์ระหว่าง hook_deploy มีการหมดเวลาหลังจาก 14400s ที่มาจาก Drush (ตั้งค่าใน drush.php) และการหมดเวลาของฐานข้อมูลด้วย ฉันไม่รู้ว่าจะแทนที่สิ่งนี้ได้อย่างไร ซึ่งเป็นสาเหตุที่ฉันพยายามลด เวลาสำหรับกระบวนการทั้งหมด ฉันคิดว่าฉันจะสร้าง cron ที่จะรัน 4 เท่าของแบทช์และหารจำนวนโหนดทั้งหมดใน 4
cn flag
โอ้ ฉันเข้าใจแล้ว สิ่งนี้อาจมีประโยชน์เช่นกัน: https://drupal.stackexchange.com/questions/280846/how-to-change-the-drush-default-timeout-of-14400
jacksparrow avatar
ve flag
@Clive ขอบคุณสำหรับความช่วยเหลือของคุณ!

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา