คำถามติดแท็ก ruby

Ruby เป็นหลายภาษาแพลตฟอร์มตีความโอเพ่นซอร์สเชิงวัตถุแบบไดนามิกที่สร้างขึ้นโดย Yukihiro Matsumoto (Matz) ในปี 1995 แท็ก [ruby] สำหรับคำถามที่เกี่ยวข้องกับภาษา Ruby รวมถึงไวยากรณ์และห้องสมุดของมัน ควรติดแท็กคำถาม Ruby on Rails ด้วย [ruby-on-rails]

17
ฉันจะลบองค์ประกอบว่างออกจากอาร์เรย์ได้อย่างไร
ฉันมีอาเรย์ต่อไปนี้ cities = ["Kathmandu", "Pokhara", "", "Dharan", "Butwal"] ฉันต้องการลบองค์ประกอบว่างเปล่าออกจากอาร์เรย์และต้องการผลลัพธ์ต่อไปนี้: cities = ["Kathmandu", "Pokhara", "Dharan", "Butwal"] มีวิธีการเช่นcompactนี้ไหมที่จะทำโดยไม่ต้องวนซ้ำ?
284 ruby  arrays 

14
คุณจะเรียกใช้ไฟล์ทดสอบ / ข้อมูลจำเพาะเดียวใน RSpec ได้อย่างไร
ฉันต้องการให้สามารถทดสอบไฟล์ข้อมูลจำเพาะเดียวได้เช่นไฟล์เดียวที่ฉันกำลังแก้ไข rake specดำเนินการรายละเอียดทั้งหมด โครงการของฉันไม่ใช่โครงการ Rails ดังนั้นrake spec:docใช้งานไม่ได้ ไม่ทราบว่าเรื่องนี้ แต่นี่คือโครงสร้างไดเรกทอรีของฉัน ./Rakefile ./lib ./lib/cushion.rb ./lib/cushion ./lib/cushion/doc.rb ./lib/cushion/db.rb ./spec ./spec/spec.opts ./spec/spec_helper.rb ./spec/db_spec.rb
282 ruby  testing  rspec 

8
วิธีการจัดเรียงอาร์เรย์ตามลำดับจากมากไปน้อยใน Ruby
ฉันมีแฮชมากมาย: [ { :foo => 'foo', :bar => 2 }, { :foo => 'foo', :bar => 3 }, { :foo => 'foo', :bar => 5 }, ] ฉันพยายามเรียงลำดับอาร์เรย์นี้จากมากไปน้อยตามมูลค่าของ:barในแต่ละแฮช ฉันใช้sort_byเพื่อเรียงลำดับข้างต้นอาร์เรย์: a.sort_by { |h| h[:bar] } อย่างไรก็ตามนี่จะเรียงลำดับอาร์เรย์ตามลำดับจากน้อยไปหามาก ฉันจะทำให้เรียงลำดับจากมากไปน้อยได้อย่างไร ทางออกหนึ่งคือทำตาม: a.sort_by { |h| -h[:bar] } แต่เครื่องหมายลบนั้นดูไม่เหมาะสม
282 ruby  sorting 

30
SSL_connect ส่งคืน = 1 errno = 0 state = SSLv3 อ่านใบรับรองเซิร์ฟเวอร์ B: การตรวจสอบใบรับรองล้มเหลว
ฉันใช้Authlogic-Connectสำหรับการเข้าสู่ระบบของบุคคลที่สาม หลังจากใช้การย้ายข้อมูลที่เหมาะสมแล้วการลงชื่อเข้าใช้ Twitter / Google / yahoo ดูเหมือนว่าจะทำงานได้ดี แต่การเข้าสู่ระบบ Facebook มีข้อยกเว้น: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed บันทึก dev แสดงให้เห็น OpenSSL::SSL::SSLError (SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed): app/controllers/users_controller.rb:37:in `update' กรุณาแนะนำ ..

4
แทนที่คำในสตริง - Ruby
ฉันมีสตริงใน Ruby: sentence = "My name is Robert" ฉันจะแทนที่คำใดคำหนึ่งในประโยคนี้ได้อย่างง่ายดายโดยไม่ต้องใช้โค้ดที่ซับซ้อนหรือวนซ้ำ

10
วิธีทั่วไปในการอ่านไฟล์ในทับทิมคืออะไร?
วิธีทั่วไปในการอ่านไฟล์ในทับทิมคืออะไร? ตัวอย่างเช่นต่อไปนี้เป็นวิธีการหนึ่ง: fileObj = File.new($fileName, "r") while (line = fileObj.gets) puts(line) end fileObj.close ฉันรู้ว่าทับทิมมีความยืดหยุ่นสูงมาก ประโยชน์ / ข้อเสียของแต่ละวิธีมีอะไรบ้าง
280 ruby  file-io 

4
ความแตกต่างระหว่างเส้นทางการสะสมและเส้นทางสมาชิกในทับทิมบนราง?
อะไรคือความแตกต่างระหว่างเส้นทางการสะสมและเส้นทางสมาชิกใน Rails? ตัวอย่างเช่น, resources :photos do member do get :preview end end กับ resources :photos do collection do get :search end end ฉันไม่เข้าใจ

7
เพิ่มค่าเริ่มต้นให้กับคอลัมน์ผ่านการย้ายข้อมูล
ฉันจะเพิ่มค่าเริ่มต้นให้กับคอลัมน์ที่มีอยู่แล้วผ่านการโยกย้ายได้อย่างไร เอกสารทั้งหมดที่ฉันสามารถหาได้แสดงให้คุณเห็นว่าต้องทำอย่างไรหากไม่มีคอลัมน์อยู่ แต่ในกรณีนี้

23
ไม่สามารถสร้างส่วนขยายดั้งเดิมของอัญมณี (การติดตั้งเข็มทิศ)
เมื่อฉันพยายามติดตั้งเข็มทิศเวอร์ชันล่าสุด ( https://rubygems.org/gems/compass/versions/1.0.alpha.17 ) ฉันได้รับข้อผิดพลาดดังต่อไปนี้ ERROR: Error installing compass: ERROR: Failed to build gem native extension. ERROR: Error installing compass: ERROR: Failed to build gem native extension. /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb checking for ffi.h... no checking for ffi.h in /usr/local/include,/usr/include/ffi... yes checking for ffi_call() in -lffi... yes checking for ffi_prep_closure()... yes checking …

10
บล็อกและให้ผลตอบแทนใน Ruby
ฉันพยายามทำความเข้าใจกับบล็อกyieldและวิธีการทำงานของ Ruby วิธีการyieldใช้งานอย่างไร แอพพลิเคชั่นของ Rails หลายตัวที่ฉันเคยใช้yieldดูแปลก ๆ มีใครอธิบายให้ฉันฟังหรือแสดงให้ฉันดูว่าจะไปทำความเข้าใจกับพวกเขาได้ที่ไหน
275 ruby  block 

8
ส่งผ่านตัวแปรไปยังสคริปต์ Ruby ผ่านบรรทัดคำสั่ง
ฉันติดตั้ง RubyInstaller บน Windows แล้วและฉันใช้IMAP Sync อยู่แต่ฉันต้องใช้เพื่อซิงค์บัญชีหลายร้อยบัญชี ถ้าฉันสามารถส่งตัวแปรเหล่านี้ไปยังมันผ่านทางบรรทัดคำสั่งฉันสามารถทำให้กระบวนการทั้งหมดดีขึ้นโดยอัตโนมัติ # Source server connection info. SOURCE_NAME = 'username@example.com' SOURCE_HOST = 'mail.example.com' SOURCE_PORT = 143 SOURCE_SSL = false SOURCE_USER = 'username' SOURCE_PASS = 'password' # Destination server connection info. DEST_NAME = 'username@gmail.com' DEST_HOST = 'imap.gmail.com' DEST_PORT = 993 DEST_SSL = true DEST_USER = …
275 ruby  command-line 

8
วนซ้ำทุกไฟล์ในไดเรกทอรีเดียว
ฉันจะเขียนลูปเป็น ruby ​​เพื่อให้สามารถรันบล็อกโค้ดในแต่ละไฟล์ได้อย่างไร ฉันใหม่กับทับทิมและฉันได้ข้อสรุปว่าวิธีการทำเช่นนี้คือทำทุกวง ไฟล์ทับทิมจะถูกดำเนินการจากไดเรกทอรีอื่นที่ไม่ใช่ไดเรกทอรีที่ฉันต้องการวนซ้ำ ฉันได้ลองDir.foreachแล้วก็ใช้งานไม่ได้

6
วิธีรับพา ธ สัมบูรณ์ของไดเร็กทอรีการทำงานปัจจุบันจาก irb
ฉันใช้ Ruby บน Windows แม้ว่าฉันจะไม่รู้ว่าควรสร้างความแตกต่างหรือไม่ สิ่งที่ฉันต้องการทำคือรับเส้นทางสัมบูรณ์ของไดเรกทอรีการทำงานปัจจุบัน เป็นไปได้จาก irb? เห็นได้ชัดจากสคริปต์ที่เป็นไปได้โดยใช้File.expand_path(__FILE__) แต่จาก irb ฉันลองต่อไปนี้และได้รับข้อผิดพลาด "การอนุญาตถูกปฏิเสธ": File.new(Dir.new(".").path).expand

11
เอาต์พุต Ruby Colorized ไปยังเทอร์มินัล [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน4 ปีที่แล้ว ปรับปรุงคำถามนี้ ใช้ Ruby ฉันจะทำ colorization พื้นหลังและพื้นหน้าข้อความสำหรับการส่งออกใน terminal ได้อย่างไร ฉันจำได้ว่าเมื่อการเขียนโปรแกรม Pascal เราทุกคนเคยเขียนtextcolor(…)ขั้นตอนของเราเองเพื่อให้โปรแกรมการศึกษาขนาดเล็กของเราดูสวยและนำเสนอ ฉันจะเขียนโค้ดที่เทียบเท่าใน Ruby ได้อย่างไร?

17
ตรวจสอบว่าตัวแปรไม่เป็นศูนย์และไม่เป็นศูนย์ในทับทิม
ฉันใช้รหัสต่อไปนี้เพื่อตรวจสอบว่าตัวแปรไม่เป็นศูนย์หรือไม่เป็นศูนย์ if(discount != nil && discount != 0) ... end มีวิธีที่ดีกว่าในการทำเช่นนี้?
271 ruby 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.