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

Ruby on Rails เป็นโอเพ่นซอร์สเฟรมเวิร์กแบบเต็มเว็บแอ็พพลิเคชันที่เขียนใน Ruby มันเป็นไปตามรูปแบบกรอบ MVC ที่เป็นที่นิยมและเป็นที่รู้จักกันดีในเรื่องแนวทาง

9
ฉันจะก้าวออกจากลูปด้วย Ruby Pry ได้อย่างไร
ฉันกำลังใช้ Pry กับแอปพลิเคชัน Rails ของฉัน ฉันตั้งbinding.pryวงในโมเดลของฉันเพื่อลองและแก้ไขปัญหา ตัวอย่างเช่น: (1..100).each do |i| binding.pry puts i end เมื่อฉันพิมพ์quitมันจะไปที่การทำซ้ำครั้งถัดไปและหยุดอีกครั้ง มีวิธีก้าวออกจากวงดังนั้นฉันไม่ต้องพิมพ์quit100 ครั้งหรือไม่ ปัจจุบันวิธีเดียวที่ฉันรู้วิธีที่จะออกจากมันคือการใช้CTRL+ Cและรีสตาร์ทแอปพลิเคชัน
212 ruby-on-rails  ruby  loops  exit  pry 


19
การค้นหาแบบตรงตามตัวพิมพ์ใหญ่ - เล็กในโมเดล Rails
รุ่นผลิตภัณฑ์ของฉันมีบางรายการ Product.first => #<Product id: 10, name: "Blue jeans" > ตอนนี้ฉันกำลังนำเข้าพารามิเตอร์ผลิตภัณฑ์จากชุดข้อมูลอื่น แต่มีความไม่สอดคล้องกันในการสะกดชื่อ ตัวอย่างเช่นในชุดข้อมูลอื่นBlue jeansอาจสะกดBlue Jeansได้ ฉันต้องการProduct.find_or_create_by_name("Blue Jeans")แต่สิ่งนี้จะสร้างผลิตภัณฑ์ใหม่เกือบเหมือนผลิตภัณฑ์แรก ตัวเลือกของฉันคืออะไรหากฉันต้องการค้นหาและเปรียบเทียบชื่อที่ลดระดับลง ปัญหาด้านประสิทธิภาพไม่ใช่เรื่องสำคัญจริง ๆ ที่นี่: มีผลิตภัณฑ์เพียง 100-200 รายการและฉันต้องการเรียกใช้สิ่งนี้เป็นการย้ายข้อมูลที่นำเข้าข้อมูล ความคิดใด ๆ

9
ทางรถไฟ: การตอบสนองต่อการบล็อกทำงานอย่างไร
ฉันกำลังอ่านคู่มือการเริ่มต้นใช้งาน Railsและสับสนกับหัวข้อ 6.7 หลังจากสร้างโครงสร้างขึ้นฉันพบบล็อกที่สร้างขึ้นอัตโนมัติในคอนโทรลเลอร์ของฉัน: def index @posts = Post.all respond_to do |format| format.html # index.html.erb format.json { render :json => @posts } end end ฉันต้องการที่จะเข้าใจว่าการตอบสนองการปิดกั้นการทำงานจริง รูปแบบของตัวแปรชนิดใด .html และ. json เป็นวิธีการจัดรูปแบบวัตถุหรือไม่ เอกสารสำหรับ ActionController::MimeResponds::ClassMethods::respond_to ไม่ตอบคำถาม

13
ฉันจะค้นหาเส้นทางปัจจุบันใน Rails ได้อย่างไร
ฉันจำเป็นต้องรู้เส้นทางปัจจุบันในตัวกรองใน Rails ฉันจะรู้ได้อย่างไรว่ามันคืออะไร? ฉันกำลังทำแหล่งข้อมูล REST และไม่พบเส้นทางที่ระบุชื่อ



7
Rails - วิธีใช้ตัวช่วยภายในคอนโทรลเลอร์
ในขณะที่ฉันรู้ว่าคุณควรจะใช้ผู้ช่วยในมุมมองฉันต้องการผู้ช่วยในตัวควบคุมของฉันขณะที่ฉันสร้างวัตถุ JSON เพื่อกลับไป มันเป็นเช่นนี้เล็กน้อย: def xxxxx @comments = Array.new @c_comments.each do |comment| @comments << { :id => comment.id, :content => html_format(comment.content) } end render :json => @comments end ฉันจะเข้าถึงhtml_formatผู้ช่วยของฉันได้อย่างไร

15
จะแสดงข้อความค้นหา NOT IN ด้วย ActiveRecord / Rails ได้อย่างไร
เพียงแค่อัปเดตสิ่งนี้เพราะดูเหมือนว่ามีผู้คนมากมายมาที่นี่หากคุณใช้ Rails 4 ดูคำตอบของ Trung Lê`และ VinniVidiVicci Topic.where.not(forum_id:@forums.map(&:id)) Topic.where(published:true).where.not(forum_id:@forums.map(&:id)) ฉันหวังว่าจะมีวิธีแก้ปัญหาง่ายๆที่ไม่เกี่ยวข้องfind_by_sqlถ้าไม่เช่นนั้นฉันเดาว่าจะต้องใช้งานได้ ฉันพบบทความนี้ซึ่งอ้างอิงสิ่งนี้: Topic.find(:all, :conditions => { :forum_id => @forums.map(&:id) }) ซึ่งเหมือนกับ SELECT * FROM topics WHERE forum_id IN (<@forum ids>) ฉันสงสัยว่ามีวิธีที่จะทำเช่นNOT INนั้นเช่น: SELECT * FROM topics WHERE forum_id NOT IN (<@forum ids>)

24
ไม่ได้โหลดไลบรารี: ข้อผิดพลาด libmysqlclient.16.dylib เมื่อพยายามเรียกใช้ 'เซิร์ฟเวอร์ราง' บน OS X 10.6 ด้วยอัญมณี mysql2
ฉันดิ้นรนกับสิ่งนี้มาระยะหนึ่งแล้ว ฉันได้ติดตั้ง Rails 3, gem, mysql บนเครื่อง Snow Leopard ของฉันแล้ว ทุกอย่างเป็นไปด้วยดีจนกระทั่งฉันสร้างโครงการแรกและพยายามวิ่ง rails server เมื่อใช้งานนี้ฉันจะได้รับ: jontybrook$ rails server /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle: dlopen(/Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle, 9): Library not loaded: libmysqlclient.16.dylib (LoadError) Referenced from: /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle Reason: image not found - /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle from /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2.rb:7 from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:64:in `require' from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:64:in `require' from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:62:in `each' from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:62:in `require' from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:51:in …

11
Ruby on Rails - นำเข้าข้อมูลจากไฟล์ CSV
ฉันต้องการนำเข้าข้อมูลจากไฟล์ CSV ลงในตารางฐานข้อมูลที่มีอยู่ ฉันไม่ต้องการบันทึกไฟล์ CSV เพียงแค่นำข้อมูลจากนั้นมาวางไว้ในตารางที่มีอยู่ ฉันใช้ Ruby 1.9.2 และ Rails 3 นี่คือตารางของฉัน: create_table "mouldings", :force => true do |t| t.string "suppliers_code" t.datetime "created_at" t.datetime "updated_at" t.string "name" t.integer "supplier_id" t.decimal "length", :precision => 3, :scale => 2 t.decimal "cost", :precision => 4, :scale => 2 t.integer "width" t.integer "depth" …

5
ฉันจะได้รับชื่อของตัวควบคุมปัจจุบันในมุมมองได้หรือไม่?
มีวิธีที่จะคิดออกว่าตัวควบคุมปัจจุบันมาจากภายในมุมมองหรือไม่? สำหรับตัวอย่างของสาเหตุที่ฉันต้องการทราบว่า: หากคอนโทรลเลอร์หลายตัวใช้เลย์เอาต์เดียวกันฉันอาจมีส่วนหนึ่งในไฟล์ ERB ของเลย์เอาต์ที่ฉันต้องการไฮไลต์รายการเมนูของเพจปัจจุบันตามตัวควบคุม อาจเป็นวิธีที่ไม่ดี ถ้าเป็นเช่นนั้นวิธีที่ได้รับความนิยมมากขึ้นในการทำเช่นนี้คืออะไร? ฉันสนใจที่จะทราบเกี่ยวกับการตั้งชื่อให้กับคอนโทรลเลอร์ปัจจุบันด้วยวิธีใดวิธีหนึ่ง (เห็นได้ชัดว่าฉันสามารถใส่อะไรก็ได้ลงไป@controller_name = 'users'ในคอนโทรลเลอร์แต่ละอัน แต่นั่นดูเหมือนว่าสิ่งที่ Rails จะทำไว้เบื้องหลังแล้วดังนั้นฉันแค่สงสัยว่ามีวิธีในตัว)

17
วิธีอ้างอิงรูปภาพใน CSS ภายใน Rails 4
มีปัญหาแปลก ๆ กับ Rails 4 ใน Heroku เมื่อมีการคอมไพล์รูปภาพพวกมันจะเพิ่มแฮชเข้าไป แต่การอ้างอิงไปยังไฟล์เหล่านั้นจากใน CSS นั้นไม่มีการปรับชื่อที่เหมาะสม นี่คือสิ่งที่ฉันหมายถึง ฉันมีไฟล์ชื่อ logo.png แต่เมื่อมันปรากฏบน heroku มันถูกมองว่าเป็น: /assets/logo-200a00a193ed5e297bb09ddd96afb953.png อย่างไรก็ตาม CSS ยังคงระบุ: background-image:url("./logo.png"); ผลลัพธ์: รูปภาพไม่แสดง มีใครเจอเรื่องนี้บ้างไหม? วิธีนี้สามารถแก้ไขได้?

6
สิ่งที่ทำให้เกิดข้อผิดพลาด ActiveRecord :: ReadOnlyRecord นี้?
นี่ตามคำถามก่อนหน้านี้ซึ่งตอบแล้ว ฉันค้นพบจริงฉันสามารถลบการเข้าร่วมจากแบบสอบถามนั้นดังนั้นตอนนี้แบบสอบถามที่ทำงานอยู่ start_cards = DeckCard.find :all, :joins => [:card], :conditions => ["deck_cards.deck_id = ? and cards.start_card = ?", @game.deck.id, true] ดูเหมือนว่าจะใช้งานได้ อย่างไรก็ตามเมื่อฉันพยายามย้าย DeckCards เหล่านี้ไปยังการเชื่อมโยงอื่นฉันได้รับข้อผิดพลาด ActiveRecord :: ReadOnlyRecord นี่คือรหัส for player in @game.players player.tableau = Tableau.new start_card = start_cards.pop start_card.draw_pile = false player.tableau.deck_cards << start_card # the error occurs on this …

5
Rails find_or_create_by มากกว่าหนึ่งคุณลักษณะ?
มีแอตทริบิวต์แบบไดนามิกที่มีประโยชน์ในบันทึกที่ใช้งานที่เรียกว่า find_or_create_by: Model.find_or_create_by_<attribute>(:<attribute> => "") แต่ถ้าฉันต้องการ find_or_create ด้วยแอตทริบิวต์มากกว่าหนึ่งรายการล่ะ ว่าฉันมีรูปแบบการจัดการความสัมพันธ์ M: M ระหว่างกลุ่มและสมาชิกที่เรียกว่า GroupMember ฉันสามารถมีหลายกรณีที่ member_id = 4 แต่ฉันไม่ต้องการมากกว่าหนึ่งครั้งที่ member_id = 4 และ group_id = 7 ฉันกำลังพยายามหาว่าเป็นไปได้ไหมที่จะทำสิ่งนี้: GroupMember.find_or_create(:member_id => 4, :group_id => 7) ฉันรู้ว่าอาจมีวิธีที่ดีกว่าในการจัดการกับสิ่งนี้ แต่ฉันชอบความสะดวกสบายของแนวคิดของ find_or_create

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