โครงการนี้เป็นตัวอย่างสำหรับการใช้การค้นหาข้อความแบบเต็มของ Django ตาม PostgreSQL
เวอร์ชันที่พบในสาขาหลักมีแอปพลิเคชันพร้อมแบบฟอร์มการค้นหา การค้นหาจริงใช้ icontains ของ Django ซึ่งอยู่ในแผนที่ระดับ SQL ที่จะ like ในขณะที่ไม่สนใจกรณีของตัวอักษร สิ่งนี้ใช้ได้เฉพาะกับคำขอค้นหาอย่างง่ายและไม่มีประสิทธิภาพมาก
ฟังก์ชั่นการค้นหาจะค่อยๆดีขึ้นในสาขาคุณสมบัติเพิ่มเติม:
ก่อนที่คุณจะเรียกใช้แอปพลิเคชันในสาขาหลักที่คุณต้องติดตั้ง:
ถัดไปเริ่มดาวน์โหลด ebooks บางส่วน:
sh scripts/rsync_gutenberg.shการดาวน์โหลด Library of Project Gutenberg จะใช้เวลาหลายชั่วโมง แต่สำหรับการทดสอบสคริปต์นี้จะต้องทำงานเพียงไม่กี่นาทีจนกว่าจะดาวน์โหลด ebooks ไม่กี่โหลหรือหลายร้อย
คุณสามารถปล่อยให้การทำงานนี้อยู่ในพื้นหลังในกรณีที่คุณต้องการ ebooks จำนวนมากขึ้นในที่สุด
ถัดไปเรียกใช้คอนเทนเนอร์ Docker ที่ให้บริการเซิร์ฟเวอร์ฐานข้อมูล PostgreSQL:
docker-compose up ในขณะที่เซิร์ฟเวอร์รันคุณไม่สามารถป้อนคำสั่งใหม่ในเทอร์มินัลได้ดังนั้นจึงเปิดคำสั่งใหม่สำหรับคำสั่งที่จะปฏิบัติตาม (หรือคุณสามารถเพิ่มตัวเลือก --detach ไปยังการโทรด้านบน)
หลังจากนั้นตั้งค่าสภาพแวดล้อมบทกวีและเบ็ดล่วงหน้า:
sh scripts/setup_project.shเมื่อสิ่งนี้เสร็จสิ้นแล้วให้เปิดเชลล์บทกวี:
poetry shellคำสั่งใด ๆ เพิ่มเติมควรเรียกใช้ในเชลล์นี้
ถัดไปตั้งค่าฐานข้อมูล:
sh scripts/reset_local_database.shสิ่งนี้จะสร้างหรือล้างฐานข้อมูลและโหลด ebooks สองสามตัวลงไป
ในที่สุดคุณสามารถเรียกใช้เซิร์ฟเวอร์การพัฒนาท้องถิ่น คุณสามารถระบุพอร์ตเพื่อหลีกเลี่ยงการปะทะกับบริการที่มีอยู่:
python manage.py runserver 8078ในการค้นหานำทางไปที่ http://127.0.0.1:8078/ และป้อนคำค้นหาคำเดียวเช่น "บ้าน" (สาขาในภายหลังอนุญาตให้มีการค้นหาที่ซับซ้อนมากขึ้น)
หากต้องการเรียกดูเอกสารที่มีอยู่ให้ไปที่ http://127.0.0.1:8078/admin/guterensearch/document/ สำหรับการเข้าสู่ระบบให้ใช้ admin เป็นชื่อผู้ใช้และ deMo.123 เป็นรหัสผ่าน
หลังจากนั้นให้เปิดสไลด์ที่เก็บไว้ใน Full text search with Django and PostgreSQL.odp และทำงานผ่านพวกเขา สำหรับคุณสมบัติใหม่แต่ละรายการที่แนะนำมีคำขอดึงการศึกษาที่แสดงรหัสที่จำเป็นในการใช้งาน (ตามสาขาคุณสมบัติก่อนหน้า)