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

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

4
โครงสร้างโครงการ Ruby ในอุดมคติ
ฉันตามภาพรวม / ชี้แจงโครงสร้างโครงการที่เหมาะสำหรับโครงการทับทิม (ไม่ใช่ราง / merb / etc) ฉันคาดเดาตามนี้ app/ bin/ #Files for command-line execution lib/ appname.rb appname/ #Classes and so on Rakefile #Running tests README test,spec,features/ #Whichever means of testing you go for appname.gemspec #If it's a gem ฉันมีอะไรผิดปกติหรือเปล่า? ฉันพลาดส่วนใดไปบ้าง


6
จะส่งคืนส่วนหนึ่งของอาร์เรย์ใน Ruby ได้อย่างไร?
ด้วยรายการใน Python ฉันสามารถส่งคืนส่วนหนึ่งโดยใช้รหัสต่อไปนี้: foo = [1,2,3,4,5,6] bar = [10,20,30,40,50,60] half = len(foo) / 2 foobar = foo[:half] + bar[half:] เนื่องจาก Ruby ทำทุกอย่างในอาร์เรย์ฉันจึงสงสัยว่ามีบางอย่างที่คล้ายกันหรือไม่
125 ruby  arrays  list  slice 

20
Rails: วิธีใดที่ดีในการตรวจสอบความถูกต้องของลิงก์ (URL)
ฉันสงสัยว่าฉันจะตรวจสอบ URL ใน Rails ให้ดีที่สุดได้อย่างไร ฉันกำลังคิดว่าจะใช้นิพจน์ทั่วไป แต่ไม่แน่ใจว่านี่เป็นแนวทางปฏิบัติที่ดีที่สุดหรือไม่ และถ้าฉันจะใช้ regex มีใครแนะนำให้ฉันได้ไหม ฉันยังใหม่กับ Regex



3
อะไรคือความแตกต่างระหว่าง "after_create" และ "after_save" และเมื่อใดควรใช้
มีafter_createและafter_saveเช่นเดียวกับการทำงานต่อ? ฉันต้องการดำเนินการกับอีเมลของผู้ใช้หลังจากสร้างบัญชีแล้ว ฉันต้องการดำเนินการดังกล่าวเมื่อบันทึกไว้ในฐานข้อมูล ที่นิยมใช้: after_createหรือafter_save?

5
มีความแตกต่างระหว่างสัญกรณ์แฮช ": key =>" value "และ" key: "value" หรือไม่
มีความแตกต่างระหว่างสัญกรณ์:key => "value"(hashrocket) และkey: "value"(Ruby 1.9) หรือไม่? ถ้าไม่เช่นนั้นฉันต้องการใช้key: "value"สัญกรณ์ มีอัญมณีที่ช่วยให้ผมที่จะแปลงจาก:x =>การx:จด?


4
อะไรคือความแตกต่างระหว่างถอนขนและรวบรวมใน Rails?
นี่คือรหัสตัวอย่างสองรหัส คนแรกกับcollect: User.first.gifts.collect(&:id) อันที่สองกับpluck: User.first.gifts.pluck(:id) มีความแตกต่างระหว่างประสิทธิภาพหรืออย่างอื่นหรือไม่?

1
รับชื่อไฟล์และนามสกุลใน Ruby
ฉันกำลังทำงานกับโปรแกรมเพื่อดาวน์โหลดวิดีโอจาก YouTube แปลงเป็น MP3 และสร้างโครงสร้างไดเรกทอรีสำหรับไฟล์ รหัสของฉันคือ: FileUtils.cd("#{$musicdir}/#{$folder}") do YoutubeDlhelperLibs::Downloader.get($url) if File.exists?('*.mp4') puts 'Remove unneeded tempfile' Dir['*.mp4'].each do |waste| File.delete(waste) end else puts 'Temporary file already deleted' end Dir['*.m4a'].each do |rip| rip.to_s rip.split puts 'Inside the function' puts rip end end อันแรกไปที่โฟลเดอร์เพลงที่สร้างไว้แล้ว getภายในที่ฉันดำเนินการ หลังจากนั้นฉันมีสองไฟล์ในไดเร็กทอรี: "xyz.mp4" และ "xyz.m4a" ฉันต้องการดึงชื่อไฟล์ที่ไม่มีนามสกุลเพื่อที่ฉันจะได้จัดการไฟล์ทั้งสองต่างกัน ฉันใช้อาร์เรย์ แต่อาร์เรย์สำหรับการแข่งขันเพียงนัดเดียวฟังดูบ้าคลั่งสำหรับฉัน มีใครคิดอีกบ้าง?
123 ruby  file 

7
ฉันจะสร้างไดเร็กทอรีได้อย่างไรหากไม่มีอยู่โดยใช้คลาสไฟล์ใน Ruby
ฉันมีคำสั่งนี้: File.open(some_path, 'w+') { |f| f.write(builder.to_html) } ที่ไหน some_path = "somedir/some_subdir/some-file.html" สิ่งที่ฉันต้องการให้เกิดขึ้นคือถ้าไม่มีไดเร็กทอรีที่เรียกsomedirหรือsome_subdirหรือทั้งสองอย่างในเส้นทางฉันต้องการให้สร้างโดยอัตโนมัติ ฉันจะทำเช่นนั้นได้อย่างไร?
123 ruby 

11
วิธีที่ดีที่สุดในการแปลงอาร์เรย์เป็นแฮชใน Ruby คืออะไร
ใน Ruby ได้รับอาร์เรย์ในรูปแบบใดรูปแบบหนึ่งต่อไปนี้ ... [apple, 1, banana, 2] [[apple, 1], [banana, 2]] ... อะไรคือวิธีที่ดีที่สุดในการแปลงสิ่งนี้เป็นแฮชในรูปแบบของ ... {apple => 1, banana => 2}
123 ruby  arrays  hashmap 

9
วิธีตรวจสอบว่าวัตถุ Ruby เป็นบูลีนหรือไม่
ฉันไม่สามารถตรวจสอบได้ว่าวัตถุนั้นเป็นบูลีนได้อย่างง่ายดายหรือไม่ ในรูบี้มีอะไรแบบนี้ไหม? true.is_a?(Boolean) false.is_a?(Boolean) ตอนนี้ฉันกำลังทำสิ่งนี้และต้องการย่อให้สั้นลง: some_var = rand(1) == 1 ? true : false (some_var.is_a?(TrueClass) || some_var.is_a?(FalseClass))
122 ruby  typechecking 

28
ทำไมต้องใช้ Ruby แทน Smalltalk? [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดขึ้นมาใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา Ruby กำลังเป็นที่นิยมส่วนใหญ่มาจากอิทธิพลของ Ruby on Rails แต่ตอนนี้รู้สึกเหมือนกำลังดิ้นรนในช่วงวัยรุ่น มีความคล้ายคลึงกันมากมายระหว่าง Ruby และ Smalltalk - maglevเป็นเครื่องพิสูจน์ถึงสิ่งนั้น แม้จะมีไวยากรณ์ที่ผิดปกติมากขึ้น Smalltalk ก็มีความงามเชิงวัตถุของ Ruby ทั้งหมด (ถ้าไม่มากกว่านั้น) จากสิ่งที่ฉันได้อ่าน Smalltalk ดูเหมือนว่า Ruby จะเอาชนะ: วุฒิภาวะ (พัฒนาขึ้นในปี 1970) ความมั่นคง การสนับสนุนทางการค้า การควบคุมแหล่งที่มาแบบกระจาย (เข้าใจโครงสร้างของรหัสไม่ใช่แค่การแตกต่างของข้อความ) หลายการใช้งานของ VM การสนับสนุนข้ามแพลตฟอร์ม กรอบเว็บริมทะเลเป็นทางเลือกที่แข็งแกร่งให้กับทางรถไฟ ดูเหมือนว่า Ruby กำลังคิดค้นล้อใหม่ เหตุใดนักพัฒนา Ruby จึงไม่ใช้ SmallTalk? Ruby …

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