วันอังคารที่ 30 สิงหาคม พ.ศ. 2559
การดึงข้อมูลของ text plugin ที่สร้างแล้วออกมา
ณ ตอนที่เขียนบทความนี้ ตัวโปรเจ็คเมื่อผู้ใช้งานสร้างข่าวประเภท text แล้วยังไม่สามารถแก้ไขได้ ทำให้ต้องสร้างข่าวใหม่ทุกครั้ง ในบทความนี้จะนำเสนอเกี่ยวกับวิธีดึงข้อมูลของ text plugin ที่ถูกสร้างแล้วออกมา เพื่อนำมาประยุกต์ใช้ให้สามารถแก้ไขได้ต่อไปต่อไปนี้จะเป็นโค้ดการทดลองดึงข้อมูลจาก text plugin ออกมา
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | >>> p <PageList: page803> >>> placeholders = list(p.page.get_placeholders()) >>> placeholders [<Placeholder: content>] >>> place = placeholders[0] >>> plugins = place.get_plugins_list() >>> plugins [<CMSPlugin: 825>] >>> plug = plugins[0] >>> plug <CMSPlugin: 825> >>> instance, plugin = plug.get_plugin_instance() >>> instance <Text: Hello world> >>> instance.body '<p><br>\n<img style="height: 162px; width: 162px;" src="/media/uploads/root/2016/08/29/photodj.png" alt=""> Hello world</p>\n' |
อธิบายโค้ดด้านบน
ในบรรทัดที่ 1 กำหนดให้ p เป็น object ของหน้า page ที่มี text plugin ที่เราต้องการอยู่ ต่อมาในบรรทัดที่ 3 ทำการดึง placeholder ทั้งหมดในหน้าของ p ออกมา จากบรรทัดที่ 5 พบว่ามี placeholder ชื่อ content อยู่ตัวเดียว จึงดึงออกมาเก็บในตัวแปรชื่อ place ในบรรทัดที่ 6 ขั้นต่อมาในบรรทัดที่ 7 เก็บ plugin ทั้งหมดใน place ออกมา ในบรรทัดที่ี 10 มีการเก็บ plugin นั้นในตัวแปรชื่อ plug ในบรรทัดที่ 13 ทำการดึง instance ของ text plugin ออกมา ต้องใช้ 2 ตัวแปรเพราะเป็นรูปแบบที่ถูกกำหนดมาของ text plugin ต่อมาในบรรทัดที่ 14 เราใช้ตัวแปรชื่อ instance คือ object ที่เป็น text plugin ที่เราอ่านค่าได้ โดยใช้คำสั่งตามบรรทัดที่ 16
สมัครสมาชิก:
ส่งความคิดเห็น
(
Atom
)
ไม่มีความคิดเห็น :
แสดงความคิดเห็น