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

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

ProtoLookupUtil

เมธอดของยูทิลิตีการค้นหาใน GoogleAdsClient (สนับสนุนโดย Factory และ 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 }