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

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

14
วิธีลบคีย์ออกจากแฮชและรับแฮชที่เหลือใน Ruby / Rails
หากต้องการเพิ่มคู่ใหม่ใน Hash ฉัน: {:a => 1, :b => 2}.merge!({:c => 3}) #=> {:a => 1, :b => 2, :c => 3} มีวิธีคล้ายกันในการลบคีย์ออกจากแฮชหรือไม่ งานนี้: {:a => 1, :b => 2}.reject! { |k| k == :a } #=> {:b => 2} แต่ฉันคาดหวังว่าจะมีสิ่งที่ชอบ: {:a => 1, :b => 2}.delete!(:a) #=> {:b => 2} …

6
ฉันจะเลือกแบบสุ่มจากอาร์เรย์ได้อย่างไร
ฉันต้องการทราบว่ามีวิธีที่สะอาดกว่านี้มากในการทำสิ่งนี้หรือไม่ โดยทั่วไปฉันต้องการเลือกองค์ประกอบแบบสุ่มจากอาเรย์ที่มีความยาวผันแปรได้ โดยปกติฉันจะทำเช่นนี้: myArray = ["stuff", "widget", "ruby", "goodies", "java", "emerald", "etc" ] item = myArray[rand(myarray.length)] มีบางอย่างที่อ่าน / ง่ายกว่าในการแทนที่บรรทัดที่สองหรือไม่? หรือว่าเป็นวิธีที่ดีที่สุดที่จะทำ ฉันคิดว่าคุณสามารถทำได้myArray.shuffle.firstแต่ฉันเห็นเพียง#shuffleไม่กี่นาทีที่ผ่านมาดังนั้นฉันยังไม่ได้ใช้จริงๆ
559 ruby  arrays  random 

27
วิธีติดตั้งอัญมณีหรืออัปเดต RubyGems หากล้มเหลวด้วยข้อผิดพลาดเกี่ยวกับการอนุญาต
ฉันกำลังพยายามติดตั้งอัญมณีโดยใช้gem install mygemหรืออัปเดตโดยใช้ RubyGems gem update --systemและล้มเหลวด้วยข้อผิดพลาดนี้: ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory. ใครบ้างมีความคิดวิธีแก้ปัญหานี้
559 ruby  macos  rubygems 

7
ความแตกต่างระหว่างเท่ากับคืออะไร? eql ?, === และ ==?
ฉันพยายามเข้าใจความแตกต่างระหว่างสี่วิธีนี้ ฉันรู้โดยค่าเริ่มต้นที่==เรียกวิธีการequal?ซึ่งผลตอบแทนจริงเมื่อตัวถูกดำเนินการทั้งสองอ้างถึงวัตถุเดียวกัน ===โดยค่าเริ่มต้นยังสาย==ที่โทรequal?... ไม่เป็นไรดังนั้นหากทั้งสามวิธีการไม่ได้แทนที่แล้วผมคิดว่า ===, ==และequal?ทำสิ่งเดียวกัน? มาถึงeql?แล้ว สิ่งนี้ทำอะไร (โดยค่าเริ่มต้น) มันเรียกแฮช / ไอดีของตัวถูกดำเนินการหรือไม่? ทำไมทับทิมถึงมีเครื่องหมายความเสมอภาคมากมาย? พวกเขาควรจะแตกต่างกันในความหมาย?

7
เริ่มต้นช่วยเหลือและมั่นใจใน Ruby?
ฉันเพิ่งเริ่มเขียนโปรแกรมใน Ruby และฉันกำลังดูการจัดการข้อยกเว้น ฉันสงสัยว่าensureทับทิมนั้นเทียบเท่ากับfinallyใน C # หรือไม่ ฉันควรจะมี: file = File.open("myFile.txt", "w") begin file << "#{content} \n" rescue #handle the error here ensure file.close unless file.nil? end หรือฉันควรทำเช่นนี้? #store the file file = File.open("myFile.txt", "w") begin file << "#{content} \n" file.close rescue #handle the error here ensure file.close unless file.nil? …

10
เหตุใดจึงใช้เครื่องหมายอัศเจรีย์ในเมธอด Ruby
ในทับทิมบางวิธีมีเครื่องหมายคำถาม ( ?) ที่ถามคำถามเช่นinclude?นั้นหากถามว่าวัตถุที่เป็นปัญหานั้นรวมอยู่ด้วยสิ่งนี้จะส่งกลับค่าจริง / เท็จ แต่ทำไมบางวิธีจึงมีเครื่องหมายอัศเจรีย์ ( !) ที่คนอื่นไม่มี มันหมายความว่าอะไร?

5
ทำไมต้องใช้ ruby ​​attr_accessor, attr_reader และ attr_writer
Ruby มีวิธีที่สะดวกและสะดวกในการแบ่งปันตัวแปรอินสแตนซ์โดยใช้ปุ่มเช่น attr_accessor :var attr_reader :var attr_writer :var ทำไมฉันถึงเลือกattr_readerหรือattr_writerถ้าฉันสามารถใช้attr_accessor? มีบางอย่างที่เหมือนกับการแสดง (ซึ่งฉันสงสัย) ฉันคิดว่ามันมีเหตุผลมิฉะนั้นพวกเขาจะไม่ทำกุญแจแบบนั้น
517 ruby 




27
เกิดข้อผิดพลาดในการติดตั้ง mysql2: ไม่สามารถสร้างส่วนขยายดั้งเดิมของอัญมณี
ฉันมีปัญหาเมื่อพยายามติดตั้งmysql2gem สำหรับ Rails เมื่อฉันพยายามติดตั้งโดยการเรียกใช้bundle installหรือgem install mysql2มีข้อผิดพลาดต่อไปนี้: เกิดข้อผิดพลาดในการติดตั้ง mysql2: ข้อผิดพลาด: ไม่สามารถสร้างส่วนขยายดั้งเดิมของอัญมณี ฉันจะแก้ไขและติดตั้งสำเร็จได้mysql2อย่างไร



17
วิธีการย้อนกลับ 'รางสร้าง'
ฉันต้องการลบไฟล์ทั้งหมดที่สร้างขึ้นและย้อนกลับการเปลี่ยนแปลงใด ๆ ที่เกิดขึ้น แต่ไม่จำเป็นต้องไปที่ฐานข้อมูล แต่เพิ่มเติมกับไฟล์ปรับแต่ง ฉันต้องการลบการแมปทรัพยากรทั้งหมดโดยอัตโนมัติสำหรับตัวแบบ / ตัวควบคุมที่ถูกลบในไฟล์ route.rb และที่อื่น ๆ ที่อาจมีการเปลี่ยนแปลงหรือไม่

11
ความแตกต่างระหว่างการรวมและความต้องการในทับทิมคืออะไร?
คำถามของฉันคล้ายกับ "ความแตกต่างระหว่างการรวมและการขยายในทับทิมคืออะไร " ความแตกต่างระหว่างrequireและincludeในทับทิมคืออะไร? ถ้าฉันเพียงต้องการใช้วิธีการจากโมดูลในชั้นเรียนของฉันฉันควรrequireหรือincludeไม่
465 ruby  include  require 

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