Score:0

ล้างแคชของมุมมองเฉพาะทางโปรแกรม เฉพาะสำหรับตัวกรองตามบริบท

ธง de

ฉันใช้สิ่งต่อไปนี้เพื่อล้างดูแคชเฉพาะบน node_presave ซึ่งทำงานได้ดี

  cache_clear_all($view_name.':'.$display_name, 'cache_views_data', TRUE);

ขณะนี้ กำลังลบมุมมองทั้งหมดที่สร้างขึ้นสำหรับตัวกรองตามบริบททั้งหมด (รหัสคำอนุกรมวิธาน) ฉันต้องการลบเฉพาะมุมมองสำหรับ ID คำอนุกรมวิธานเดียวเท่านั้น

ตัวอย่างเช่น ถ้าโหนด a กับ เวลา:46 จะเพิ่ม

เกิดอะไรขึ้น: แคชของมุมมองต่อไปนี้ทั้งหมดถูกล้าง (ลบจาก cache_views_data ตาราง).

บทความ/45
บทความ/46
บทความ/47

สิ่งที่ต้องการให้เกิดขึ้น: ลบเฉพาะแคชของมุมมองสำหรับ บทความ/46.

ดังนั้น เพื่อให้บรรลุเป้าหมายนี้ ฉันจึงเริ่มขุดค้นในตาราง (โดยหลักแล้ว cache_views_data) เพื่อหารูปแบบของ CID

มีการเพิ่ม UUID like string ในแต่ละ CID

ป้อนคำอธิบายรูปภาพที่นี่

สิ่งที่ฉันรู้จนถึงตอนนี้คือ: สตริงนี้ดูเหมือนจะเหมือนกันสำหรับมุมมองเฉพาะ ตัวอย่างเช่นสำหรับมุมมอง บทความ/46มันเหมือนกันทุกครั้ง ฉันได้ลองล้างแคชหลายครั้งแล้วสร้างใหม่ครั้งแล้วครั้งเล่า

ฉันเชื่อว่าถ้าฉันรู้สตริงที่ถูกต้องสำหรับแต่ละมุมมอง ฉันสามารถล้างแคชได้โดยเฉพาะ ดังนั้นคำถามของฉันคือ: สิ่งที่ฉันพยายามจะทำให้สำเร็จนั้นเป็นไปได้หรือไม่? สตริงเปลี่ยนแปลงตามปัจจัยที่ไม่รู้จักหรือไม่? ถ้าไม่ มันสอดคล้องและเชื่อถือได้หรือไม่? ถ้าใช่ ฉันจะรู้ได้อย่างไรว่าสิ่งนี้สร้างขึ้นได้อย่างไรและที่ไหน

ฉันเดาว่า ดูโมดูล กำลังใช้ โมดูล ctools สำหรับสิ่งนี้ แต่ฉันไม่รู้ว่าเป็นอย่างไร

No Sssweat avatar
ua flag
`ฉันสามารถล้างแคชโดยเฉพาะได้ สิ่งที่ฉันพยายามทำให้สำเร็จเป็นไปได้หรือไม่' ฉันไม่กลัวหรืออย่างน้อยก็ไม่มีงานสำคัญบางอย่าง อย่างที่ฉันแน่ใจว่าคุณทราบ แท็กแคชถูกนำมาใช้ใน D8 เพื่อจุดประสงค์นี้โดยเฉพาะ ถ้ามันง่ายขนาดนี้สำหรับ D7 ฉันแน่ใจว่ามันจะถูกเพิ่มไปนานแล้ว

โพสต์คำตอบ

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