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

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

7
ติดตั้ง memcached ผ่าน homebrew จะเริ่มและหยุดเซิร์ฟเวอร์ได้อย่างไร
ฉันติดตั้ง memcached ผ่าน homebrew แล้ว ฉันจะเริ่ม / หยุดเซิร์ฟเวอร์ได้อย่างไร เครื่องมือบรรทัดคำสั่งใด ๆ ในการโต้ตอบกับ memcached? homebrew มีวิธีลบแพ็คเกจหรือไม่?

11
วิธีทำความเข้าใจสัญลักษณ์ใน Ruby
แม้จะอ่าน "การทำความเข้าใจสัญลักษณ์ทับทิม " แต่ฉันก็ยังสับสนกับการแสดงข้อมูลในหน่วยความจำเมื่อต้องใช้สัญลักษณ์ หากสัญลักษณ์สองสัญลักษณ์ที่อยู่ในวัตถุต่างกันมีอยู่ในตำแหน่งหน่วยความจำเดียวกันแล้วสัญลักษณ์นั้นมีค่าต่างกันอย่างไร? ฉันคาดว่าตำแหน่งหน่วยความจำเดียวกันจะมีค่าเดียวกัน นี่เป็นคำพูดจากลิงค์: ซึ่งแตกต่างจากสตริงสัญลักษณ์ที่มีชื่อเดียวกันจะเริ่มต้นและมีอยู่ในหน่วยความจำเพียงครั้งเดียวในระหว่างเซสชันของทับทิม ฉันไม่เข้าใจวิธีจัดการเพื่อแยกความแตกต่างของค่าที่อยู่ในตำแหน่งหน่วยความจำเดียวกัน ลองพิจารณาตัวอย่างนี้: patient1 = { :ruby => "red" } patient2 = { :ruby => "programming" } patient1.each_key {|key| puts key.object_id.to_s} 3918094 patient2.each_key {|key| puts key.object_id.to_s} 3918094 patient1และpatient2เป็นแฮชทั้งคู่ก็ใช้ได้ :rubyอย่างไรก็ตามเป็นสัญลักษณ์ หากเราจะแสดงผลลัพธ์ต่อไปนี้: patient1.each_key {|key| puts key.to_s} แล้วจะเอาท์พุทอะไร? "red", หรือ"programming"? เมื่อลืมแฮชไปสักวินาทีฉันคิดว่าสัญลักษณ์เป็นตัวชี้ค่า คำถามที่ฉันมีคือ: ฉันสามารถกำหนดค่าให้กับสัญลักษณ์ได้หรือไม่? สัญลักษณ์เป็นเพียงตัวชี้ไปยังตัวแปรที่มีค่าอยู่หรือไม่? หากสัญลักษณ์เป็นสากลหมายความว่าสัญลักษณ์ชี้ไปที่สิ่งหนึ่งเสมอหรือไม่?
85 ruby  symbols 

4
ฉันจะ "เปิดใช้งาน" อัญมณีเวอร์ชันอื่นได้อย่างไร
ฉันต้องการสลับระหว่างราง 2.3.10 เป็นอัญมณีที่ "ใช้งานอยู่" สำหรับระบบปฏิบัติการของฉันเพื่อที่ฉันจะได้เรียกใช้ที่บรรทัดคำสั่ง เป็นไปได้ไหมที่จะทำเช่นนี้? ฉันไม่ได้ใช้ rvm อาจถึงเวลาเริ่มต้น ฉันพยายามแต่ที่จะทำให้แน่ใจว่ารุ่นของอัญมณีที่มีการติดตั้งก็ไม่ได้ใส่ไว้ในgem install rails --version=2.3.10/usr/bin/rails (ฉันใช้บันเดิลเลอร์สำหรับแอพของฉันอยู่แล้ว - แต่ยังไม่ต้องการการควบคุมอัญมณีที่แม่นยำในระดับ OS จนถึงตอนนี้)

6
วงเล็บต่างๆใน Ruby หมายถึงอะไร?
ใน Ruby ความแตกต่างระหว่าง{}และ[]อย่างไร? {} ดูเหมือนว่าจะใช้สำหรับทั้งบล็อกโค้ดและแฮช มี[]เพียง แต่สำหรับอาร์เรย์? เอกสารไม่ชัดเจนมาก
85 ruby  syntax 

5
คลาสซิงเกิลในทับทิมคืออะไร?
คลาสซิงเกิลใน Ruby เป็นคลาสในตัวเองหรือไม่? มันเป็นเหตุผลว่าทำไมวัตถุทั้งหมดเป็นของ "คลาส"? แนวคิดนั้นคลุมเครือแต่ฉันเชื่อว่ามันมีส่วนเกี่ยวข้องกับสาเหตุที่ฉันสามารถกำหนดเมธอดคลาสได้เลย ( class foo; def foo.bar ...) คลาส Singleton ใน Ruby คืออะไร?
85 ruby  oop  singleton 

3
ฉันจะสร้างสำเนาของคอลัมน์บางคอลัมน์ของไฟล์ CSV ใน Ruby ที่มีข้อมูลต่างกันในคอลัมน์เดียวได้อย่างไร
ฉันมีไฟล์ CSV ชื่อ "A.csv" ฉันต้องการสร้างไฟล์ CSV ใหม่ชื่อ "B.csv" โดยใช้ข้อมูลจาก "A.csv" ฉันจะใช้คอลัมน์ย่อยจาก "A.csv" และจะต้องอัปเดตค่าของคอลัมน์หนึ่งเป็นค่าใหม่ใน "B.csv" ในท้ายที่สุดฉันจะใช้ข้อมูลนี้จาก B.csv เพื่อตรวจสอบกับฐานข้อมูล ฉันจะสร้างไฟล์ CSV ใหม่ได้อย่างไร ฉันจะคัดลอกข้อมูลคอลัมน์ที่ต้องการจาก A.csv เป็น "B.csv" ได้อย่างไร ฉันจะผนวกค่าสำหรับคอลัมน์ใดคอลัมน์หนึ่งได้อย่างไร ฉันยังใหม่กับ Ruby แต่ฉันสามารถอ่าน CSV เพื่อรับอาร์เรย์หรือแฮชได้
85 ruby  csv 

6
รับคำเตือน "Insecure world writable dir / home / Chance" ใน PATH โหมด 040777 สำหรับรางและอัญมณี
ฉันได้ลองสิ่งนี้แล้วแต่มันไม่ได้ทำงานและดูเหมือนจะเป็น OSX ฉันมีการติดตั้ง Ubuntu 10.10 ใหม่พร้อม rvm, ราง 3 และ Ruby 1.9.2 ฉันมีแอปรางใหม่ แต่การใช้อัญมณีหรือรางทำให้เกิดคำเตือนต่อไปนี้ (มีความล่าช้า) $ ราง -v /home/chance/.rvm/gems/ruby-1.9.2-p180@global/gems/railties-3.0.5/lib/rails/script_rails_loader.rb:11: warning: Insecure world writable dir /home/chance in PATH, mode 040777 /home/chance/.rvm/gems/ruby-1.9.2-p180@global/gems/bundler-1.0.10/lib/bundler/runtime.rb:136: warning: Insecure world writable dir /home/chance in PATH, mode 040777 Rails 3.0.5 $ อัญมณี -v /home/chance/.rvm/rubies/ruby-1.9.2-p180/bin/gem:4: warning: Insecure world writable …
85 ruby-on-rails  ruby  linux  gem  rvm 

6
Rails Paperclip จะลบไฟล์แนบได้อย่างไร?
ฉันใช้Paperclip (w / Amazon s3) บน Rails 3 ฉันต้องการลบไฟล์แนบที่มีอยู่โดยไม่ต้องแทนที่ด้วยการดำเนินการอัปเดต ฉันพบเพียงตัวอย่างเดียวที่นี่และไม่สามารถใช้งานได้มันจะไม่ลบและไม่มีอะไรในบันทึกที่จะบอกว่าทำไม ฉันต้องการทำสิ่งนี้ในแบบฟอร์ม: <%- unless @page.new_record? || !@page.image? -%> <%= f.check_box :image_delete, :label => 'Delete Image' %> <%- end -%> (หน้าคือชื่อของรุ่นรูปภาพคือชื่อแอตทริบิวต์ที่มีไฟล์แนบ) แต่ฉันจะตรวจจับช่องทำเครื่องหมายนั้นได้อย่างไรและที่สำคัญกว่านั้นคือฉันจะลบภาพได้อย่างไร? ขอขอบคุณสำหรับความช่วยเหลือ!

2
File.expand_path (“ ../../ Gemfile”, __FILE__) ทำงานอย่างไร ไฟล์อยู่ที่ไหน
ENV["BUNDLE_GEMFILE"] = File.expand_path("../../Gemfile", __FILE__) ฉันแค่พยายามเข้าถึงไฟล์. rb จากไดเร็กทอรีและบทช่วยสอนกำลังบอกให้ใช้โค้ดนี้ แต่ฉันไม่เห็นว่ามันค้นหาไฟล์ gem ได้อย่างไร
84 ruby 

10
Ruby each_with_index offset
ฉันสามารถกำหนดออฟเซ็ตของดัชนีใน each_with_index loop iterator ได้หรือไม่ ความพยายามตรงไปตรงมาของฉันล้มเหลว: some_array.each_with_index{|item, index = 1| some_func(item, index) } แก้ไข: คำชี้แจง: ฉันไม่ต้องการให้มีการชดเชยอาร์เรย์ฉันต้องการให้ดัชนีภายใน each_with_index ไม่ได้เริ่มจาก 0 แต่เช่น 1
84 ruby  iteration 

12
ทางออกที่ดีที่สุดสำหรับการรับรองความถูกต้องใน Ruby on Rails [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดขึ้นมาใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ฉันกำลังมองหาโซลูชันที่สร้างไว้ล่วงหน้าซึ่งสามารถใช้ในแอปพลิเคชัน RoR ของฉันได้ ฉันกำลังมองหาสิ่งที่คล้ายกับการรับรองความถูกต้องของ ASP.NET Forms ที่ให้การตรวจสอบอีเมลการควบคุมการลงทะเบียนและอนุญาตให้ผู้ใช้รีเซ็ตรหัสผ่าน โอ้ใช่และช่วยให้ฉันดึงผู้ใช้ที่ล็อกอินเข้าสู่แอปพลิเคชันได้อย่างง่ายดาย ฉันเริ่มมองหางานที่เขียนไปแล้ว แต่ฉันพบว่ามันสับสนจริงๆ ฉันได้ดูที่ LoginGenerator, RestfulAuthentication, SaltedLoginGenerator แต่ดูเหมือนจะไม่มีที่เดียวที่มีบทช่วยสอนที่ยอดเยี่ยมหรือมีการเปรียบเทียบ หากมีไซต์ที่ฉันยังไม่เคยค้นพบหรือหากมีมาตรฐานโดยพฤตินัยที่คนส่วนใหญ่ใช้ฉันขอขอบคุณสำหรับความช่วยเหลือ

11
เส้นทางนักพัฒนาที่ใช้งานอยู่บน MAC OS X ไม่ถูกต้องหลังจากติดตั้ง Ruby
ฉันได้รับข้อผิดพลาดนี้: xcrun: error: invalid active developer path (/Applications/Xcode.app), missing xcrun at: /Applications/Xcode.app/usr/bin/xcrun วิธีนี้ใช้ได้ผล แต่เกิดข้อผิดพลาดอีกครั้งหลังจากปิดเทอร์มินัลของฉันและเปิดใหม่ จากนั้นฉันต้องเรียกใช้คำสั่งเดิมทุกครั้งที่เปิดหน้าต่างเทอร์มินัลใหม่ ฉันจะใช้การเปลี่ยนแปลงเหล่านี้เพื่อที่จะบันทึกหลังจากปิดหน้าต่างเทอร์มินัลได้อย่างไร
84 ruby  xcode  macos  xcrun 

5
before_filter พร้อมพารามิเตอร์
ฉันมีวิธีที่ทำสิ่งนี้: before_filter :authenticate_rights, :only => [:show] def authenticate_rights project = Project.find(params[:id]) redirect_to signin_path unless project.hidden end ฉันต้องการใช้วิธีนี้ในตัวควบคุมอื่น ๆ ด้วยดังนั้นฉันจึงคัดลอกเมธอดไปยังตัวช่วยที่รวมอยู่ใน application_controller ปัญหาคือในคอนโทรลเลอร์บางตัว id ของโปรเจ็กต์ไม่ใช่:idสัญลักษณ์ แต่เป็น fe :project_id(และยังมี:idอยู่ (สำหรับรุ่นอื่น) คุณจะแก้ปัญหานี้อย่างไร? มีตัวเลือกในการเพิ่มพารามิเตอร์ให้กับการกระทำ before_filter (เพื่อส่งผ่านพารามิเตอร์ที่ถูกต้อง) หรือไม่

3
วิธีแก้ไขข้อความเตือนของ Rails ด้วย Ruby 2.7.0
ไม่มีใครแก้ไขปัญหานี้ด้วยRuby 2.7.0? ผมใช้rbenvและติดตั้งทับทิม v2.7.0 Rails v6.0.2.1แล้วสร้างโครงการทางรถไฟโดยใช้ ปัจจุบันโดยเรียกใช้หนึ่งใน rails s rails s -u puma rails s -u webrick เซิร์ฟเวอร์ทำงานอยู่และมีการให้บริการเว็บไซต์ แต่ในConsoleบันทึกฉันเห็นข้อความเตือนสองข้อความ: local:~/rcode/rb27$ rails s => Booting Puma => Rails 6.0.2.1 application starting in development => Run `rails server --help` for more startup options .rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/actionpack-6.0.2.1/lib/action_dispatch/middleware/stack.rb:37: warning: Using the last argument as keyword parameters …

4
วิธีที่ไม่ได้กำหนด `loading_keys 'กำลังโหลดเว็บ Sidekiq
หลังจากอัปเดตพลอยแล้วจะไม่โหลดเว็บไซต์ sidekiq ที่ให้ข้อผิดพลาดดังต่อไปนี้: NoMethodError (undefined method `transform_keys' for <ActionDispatch::Request::Session:0x00005568df2a8710>): อัญมณีที่ได้รับการอัพเดต ได้แก่ : selenium-webdriver 3.142.7 rack-protection 2.0.8.1 mime-types 3.3.1 mini_magick 4.10.1 image_processing 1.10.3 groupdate 4.3.0 friendly_id 5.3.0 faraday 0.17.3 http 4.3.0 public_suffix 4.0.3 rack 2.1.1 crass 1.0.6 i18n 1.7.1 minitest 5.14.0 รุ่น ruby: ruby ​​2.6.0p0 (2018-12-25 รุ่นที่แก้ไข 66547) [x86_64-linux] ข้อความแสดงข้อผิดพลาดแบบเต็ม

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