สรุปพจนานุกรมหลายภาษาออนไลน์ของ Glosbe แปลและรับคำจำกัดความของคำระหว่างภาษา
ดูรายการภาษาที่รองรับทั้งหมด
เพิ่มบรรทัดนี้ลงใน Gemfile ของแอปพลิเคชันของคุณ:
gem 'glosbe-translate'
แล้วดำเนินการ:
$ bundle
หรือติดตั้งด้วยตัวเองเป็น:
$ gem install glosbe-translate
การแปลและคำจำกัดความทั้งหมดใช้รหัสภาษา ISO-639 to
และ from
จากเวอร์ชันอักขระสองหรือสามตัว Glosbe รองรับรายการภาษาที่หลากหลาย
วิธีการเรียนบนวัตถุภาษาที่ช่วยให้คุณสามารถค้นหาเพียงครั้งเดียว:
Glosbe :: Language . translate ( "please" , from : :en , to : :nl )
=> "alstublieft"
ดึงคำจำกัดความในภาษา from
:
Glosbe :: Language . define ( "pineapple" , from : :en , to : :fr )
=> [ "fruit" ,
"Large sweet fleshy tropical fruit with a terminal tuft of stiff leaves." ,
"plant" ]
ดึงคำจำกัดความในภาษา to
:
Glosbe :: Language . translated_define ( "pie" , from : :en , to : :fr )
=> [ "Plat constitué de viandes, fruits ou autres nourriture cuits dans ou sur une pâte." ,
"Plat, préparation à base de pâte aplatie au rouleau, et d’une garniture salée ou sucrée" ]
วิธีใดวิธีหนึ่งในสามวิธีข้างต้นสามารถใช้คู่ค่าคีย์ที่ง่ายกว่า from: :to
languages:
Glosbe :: Language . translate ( "fromage" , fr : :en )
=> "cheese"
การแปลและคำจำกัดความเสร็จสิ้นจากวัตถุ Language
:
language = Glosbe :: Language . new ( from : "eng" , to : "nld" )
ยอมรับสัญลักษณ์และสตริง และรหัสภาษาจะถูกแปลงให้ตรงกับที่คาดหวังโดย API
มีสามวิธีเดียวกันในการแปลและกำหนดวลีโดยใช้วัตถุนี้:
language . translate ( "please" )
=> "alstublieft"
language . define ( "pineapple" )
=> [ "fruit" ,
"Large sweet fleshy tropical fruit with a terminal tuft of stiff leaves." ,
"plant" ]
language . translated_define ( "pie" )
=> [ "Plat constitué de viandes, fruits ou autres nourriture cuits dans ou sur une pâte." ,
"Plat, préparation à base de pâte aplatie au rouleau, et d’une garniture salée ou sucrée" ]
การค้นหาจะส่งคืนวัตถุ Response
:
response = language . lookup ( "coffee" )
การตอบสนองแสดงถึงฟิลด์ทั้งหมดที่ส่งคืนจาก API ในโครงสร้างที่คล้ายกันมาก
HTTP เป็น 200 ตกลงหรือไม่
response.success?
=> true
มีผลลัพธ์กลับมาบ้างไหม?
response.found?
=> true
ฟิลด์ในการตอบกลับจะถูกแมปโดยตรงเพื่อความสะดวก:
response . from
=> "en"
response . to
=> "nl"
response . phrase
=> "coffee"
บางครั้งอาจมีข้อความส่งคืนจากเซิร์ฟเวอร์ สิ่งนี้น่าสนใจเป็นอย่างยิ่งสำหรับคำเตือนการจำกัดอัตรา:
response . message
=> "Too many queries, your IP has been blocked"
วิธีอำนวยความสะดวกจะแยกฟังก์ชันสามฟังก์ชันที่เหมือนกันและส่งกลับค่าที่ทำซ้ำข้างต้น:
response . translation
response . define
response . translated_define
ผลลัพธ์ดิบที่ตรงกับโครงสร้างของ API มีอยู่ที่นี่
รายการผลลัพธ์ทั้งหมดสามารถดูได้จากคำตอบ:
response . results
=> [ ... ]
แต่ละออบเจ็กต์ผลลัพธ์จะมีวลีที่แปลแล้วหากมี
result . phrase
=> "koffie"
ผลลัพธ์จะแสดงรายชื่อผู้เขียน:
result . authors
=> [ ... ]
และความหมายของมัน:
result . meanings
=> [ ... ]
แต่ละความหมายมีภาษาและข้อความ:
meaning . text
=> "Een drank bekomen door infusie van de bonen van de koffieplant in heet water."
meaning . language
=> "nl"
ไม่มีการรับประกันว่าจะมีช่องเหล่านี้อยู่ แม้ว่าพวกเขาจะส่งคืนสตริงหรือ nil
สำหรับฟิลด์ค่า และจะส่งกลับอาร์เรย์ว่างสำหรับฟิลด์คอลเลกชันเสมอ
การบันทึกมีค่าเริ่มต้นเป็น nil
แต่สามารถส่งผ่านวัตถุ Logger
ใด ๆ เพื่อแก้ไขข้อบกพร่องคำขอเครือข่ายได้
Glosbe . logger = Logger . new ( "glosbe.log" )
Glosbe . logger = Rails . logger
หลังจากตรวจสอบ repo แล้ว ให้รัน bin/setup
เพื่อติดตั้งการขึ้นต่อกัน จากนั้นรัน rake spec
เพื่อรันการทดสอบ คุณยังสามารถเรียกใช้ bin/console
เพื่อรับข้อความโต้ตอบที่จะช่วยให้คุณสามารถทดลองได้
หากต้องการติดตั้ง gem นี้ลงในเครื่องของคุณ ให้รัน bundle exec rake install
รายงานข้อผิดพลาดและคำขอดึงยินดีต้อนรับบน GitHub ที่ https://github.com/kmcphillips/glosbe-translate
มาคุยกับฉันว่าคุณทำงานอะไร ฉันชอบที่จะตรวจสอบ PR หากคุณพบข้อบกพร่องหรือคิดถึงการปรับปรุง
อัญมณีนี้มีให้ใช้งานในรูปแบบโอเพ่นซอร์สภายใต้เงื่อนไขของใบอนุญาต MIT