ยูทิลิตีการค้นหา

การดึงข้อมูลอ้างอิงไปยังคลาส Proto เมื่อใช้ API กำหนดให้คุณต้องมีความเข้าใจอย่างลึกซึ้งเกี่ยวกับ API หรือดูเอกสารอ้างอิง Proto บ่อยๆ เพื่อหาเส้นทางเนมสเปซที่ถูกต้อง

ProtoLookupUtil

เมธอดของยูทิลิตีการค้นหาใน GoogleAdsClient (สนับสนุนโดย Factories และ ServiceLookup ซึ่งแทนที่คลาส ProtoLookupUtil เดิม) ช่วยให้คุณค้นหาและสร้างอินสแตนซ์ของบริการ การดำเนินการ การแจงนับ และทรัพยากรได้โดยไม่ต้องติดตามหมายเลขเวอร์ชัน API และเนมสเปซของโมดูล โดยค่าเริ่มต้น เมธอดเหล่านี้จะใช้ API เวอร์ชันสูงสุดที่ Gem ที่ติดตั้งไว้รองรับ (V26 ในรุ่นล่าสุด โดยที่ API รุ่นย่อย เช่น v25.1 จะใช้โมดูลเวอร์ชันหลัก V25) หรือคุณจะระบุคำนำหน้าเวอร์ชันที่ชัดเจน (เช่น v26) ในการเรียกใช้การค้นหาก็ได้

หากไม่มีเครื่องมือค้นหา คุณจะสร้างอินสแตนซ์ทรัพยากรแคมเปญโดยตรงจากเนมสเปซที่มีเวอร์ชัน ดังนี้

campaign =
  Google::Ads::GoogleAds::V26::Resources::Campaign.new

เมื่อใช้วิธีการค้นหาไคลเอ็นต์ คุณจะสร้างอินสแตนซ์ทรัพยากรได้โดยตรงจากไคลเอ็นต์ ดังนี้

campaign = client.resource.campaign

เมื่อดึงข้อมูลทรัพยากร บริการ หรือการดำเนินการ ระบบจะแสดงผลอินสแตนซ์ของเอนทิตีนั้น ดังนี้

# Instantiate an operation
operation = client.operation.campaign

การค้นหาบริการ

ใช้เมธอด client.service เพื่อดึงข้อมูลไคลเอ็นต์บริการ แม้ว่าคุณจะไม่ได้ใช้ยูทิลิตีนี้กับเอนทิตีอื่นๆ ก็ตาม client.service จะกำหนดค่าข้อมูลรับรองการตรวจสอบสิทธิ์และการตั้งค่าการรับส่งข้อมูลในไคลเอ็นต์บริการที่แสดงผลโดยอัตโนมัติ ดังนี้

campaign_service = client.service.campaign

การค้นหาการแจงนับ

สำหรับช่อง enum ในข้อความ protobuf ให้กำหนดสัญลักษณ์ Ruby โดยตรงแทนการค้นหาโมดูลการแจงนับ ดังนี้

campaign.status = :PAUSED

หากต้องการตรวจสอบหรือทำซ้ำสัญลักษณ์ที่ถูกต้องทั้งหมดสำหรับการแจงนับที่รันไทม์ ให้ใช้ client.enum ซึ่งจะแสดงผล Google::Protobuf::EnumDescriptor สำหรับ enum นั้น

status_enum = client.enum.campaign_status
status_enum.each { |status| p status }