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

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

8
ประหยัด enum จากการเลือกใน Rails 4.1
ฉันใช้ enums ใน Rails 4.1 เพื่อติดตามสีของไวน์ Wine.rb class Wine < ActiveRecord::Base enum color: [:red, :white, :sparkling] end ในมุมมองของฉันฉันสร้างสิ่งที่เลือกเพื่อให้ผู้ใช้สามารถเลือกไวน์ที่มีสีที่ต้องการได้ f.input :color, :as => :select, :collection => Wine.colors สิ่งนี้สร้าง HTML ต่อไปนี้: <select id="wine_color" name="wine[color]"> <option value=""></option> <option value="0">red</option> <option value="1">white</option> <option value="2">sparkling</option> </select> '1' is not a valid colorแต่เมื่อส่งแบบฟอร์มที่ผมได้รับข้อผิดพลาดในการโต้แย้งระบุ ผมทราบดีว่านี่เป็นเพราะcolorต้องเท่ากับและไม่ได้1"1" มีวิธีบังคับให้ Rails …

8
ทำให้เทียบกับคนตัดไม้ในงานคราดราง
ในงานคราดถ้าฉันใช้คำสั่ง puts ฉันจะเห็นผลลัพธ์บนคอนโซล อย่างไรก็ตามฉันจะไม่เห็นข้อความนั้นในไฟล์บันทึกเมื่อแอปถูกปรับใช้ในการผลิต อย่างไรก็ตามถ้าฉันพูดว่า Rails.logger.info ในโหมดการพัฒนาฉันไม่เห็นอะไรบนคอนโซล ฉันต้องไปที่ไฟล์บันทึกและบอกสิ่งนั้น ฉันต้องการใช้ Rails.logger.info และในโหมดการพัฒนาภายในงานคราดควรส่งเอาต์พุตจากคนตัดไม้ไปยังคอนโซลด้วย มีวิธีที่จะบรรลุได้หรือไม่?

17
จะตั้งค่าเริ่มต้นใน Rails ได้อย่างไร?
ฉันพยายามหาวิธีที่ดีที่สุดในการตั้งค่าเริ่มต้นสำหรับวัตถุใน Rails สิ่งที่ดีที่สุดที่ฉันคิดได้คือการตั้งค่าเริ่มต้นในnewวิธีการในคอนโทรลเลอร์ ใครมีข้อมูลเข้าบ้างไหมว่าสิ่งนี้ยอมรับได้หรือมีวิธีที่ดีกว่านี้ไหม

1
ตัวเลือก“: nothing” เลิกใช้งานแล้วและจะถูกลบออกใน Rails 5.1
รหัสนี้ในราง 5 class PagesController < ApplicationController def action render nothing: true end end ส่งผลให้เกิดคำเตือนการเลิกใช้งานต่อไปนี้ DEPRECATION WARNING: :nothing` option is deprecated and will be removed in Rails 5.1. Use `head` method to respond with empty response body. ฉันจะแก้ไขปัญหานี้ได้อย่างไร

4
Rails - ตรวจสอบการมีอยู่ของสมาคม?
ฉันมีโมเดล A ที่มีการเชื่อมโยง "has_many" กับโมเดลอื่น B ​​ฉันมีข้อกำหนดทางธุรกิจที่การแทรกใน A ต้องมีอย่างน้อย 1 เร็กคอร์ดที่เกี่ยวข้องกับ B มีวิธีใดบ้างที่ฉันสามารถเรียกเพื่อให้แน่ใจว่านี่เป็นความจริง หรือฉันต้องเขียนการตรวจสอบความถูกต้องเอง?

5
เปลี่ยนชื่อของพารามิเตอร์: id ในการกำหนดเส้นทางทรัพยากรสำหรับ Rails
ฉันมองไปรอบ ๆ เกี่ยวกับวิธีการเปลี่ยนสล็อตพารามิเตอร์แบบไดนามิกและพบว่าโพสต์นี้ทำสิ่งที่แน่นอน โพสต์คือhttps://thoughtbot.com/blog/rails-patch-change-the-name-of-the-id-parameter-in โดยทั่วไปสิ่งที่ทำคือเส้นทางต่อไปนี้: map.resources :clients, :key => :client_name do |client| client.resources :sites, :key => :name do |site| site.resources :articles, :key => :title end end เส้นทางเหล่านี้สร้างเส้นทางต่อไปนี้: /clients/:client_name /clients/:client_name/sites/:name /clients/:client_name/sites/:site_name/articles/:title วิธีแก้ปัญหาอย่างหนึ่งคือการลบล้างdef to_paramเมธอดในโมเดล แต่ฉันต้องการสิ่งนี้โดยไม่ต้องสัมผัสโมเดลนั้นเอง แต่เนื่องจากเป็น Rails 2.x ฉันจะทำสิ่งเดียวกันกับ Rails 3 ได้อย่างไร อัปเดต แอพนี้ใช้ Mongoid ไม่ใช่ AR ดังนั้นอัญมณีที่เป็นมิตรจึงไม่สามารถใช้ afaik ได้

4
ฉันจะเรียกใช้ไฟล์ Ruby ในสภาพแวดล้อม Rails ได้อย่างไร
ฉันต้องการเรียกใช้ไฟล์ Ruby ในบริบทของสภาพแวดล้อม Rails รางวิ่งเกือบจะทำในสิ่งที่ฉันอยากทำ แต่ฉันขอแค่ตั้งชื่อไฟล์และอาร์กิวเมนต์ให้มัน ฉันค่อนข้างมั่นใจว่าเป็นไปได้ตั้งแต่ที่ฉันเคยทำมาก่อน ใครช่วยเตือนฉันได้ไหมว่าต้องทำอย่างไร

2
mattr_accessor ในโมดูล Rails คืออะไร?
ฉันไม่สามารถจริงๆพบนี้ในเอกสารทางรถไฟ แต่ดูเหมือนว่า'mattr_accessor'เป็นโมดูลควันหลงสำหรับ'attr_accessor' (ทะเยอทะยานและหมา) ในทับทิมปกติระดับ เช่น. ในชั้นเรียน class User attr_accessor :name def set_fullname @name = "#{self.first_name} #{self.last_name}" end end เช่น. ในโมดูล module Authentication mattr_accessor :current_user def login @current_user = session[:user_id] || nil end end วิธีการช่วยเหลือนี้มีให้โดยActiveSupport

15
ข้อผิดพลาด“ ไม่พบบันเดิลเลอร์”
เมื่อฉันพยายามทำbundler updateฉันได้รับข้อผิดพลาดนี้: .rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find bundler (>= 0) amongst [rake-0.8.7, rake-0.8.7, rubygems-update-1.8.4] (Gem::LoadError) ฉันยังใหม่กับ Ruby มีใครบอกได้ไหมว่าอะไรจะทำให้เกิดปัญหานี้? ติดตั้ง Rake 0.8.7 แล้ว

6
ความสัมพันธ์แบบกลุ่มต่อกลุ่มกับรุ่นเดียวกันในราง?
ฉันจะสร้างความสัมพันธ์แบบกลุ่มต่อกลุ่มกับโมเดลเดียวกันในรางได้อย่างไร ตัวอย่างเช่นแต่ละโพสต์จะเชื่อมต่อกับโพสต์จำนวนมาก

4
วิธีการแสดงระเบียนที่ไม่ซ้ำกันจาก has_many ผ่านความสัมพันธ์?
ฉันสงสัยว่าวิธีใดเป็นวิธีที่ดีที่สุดในการแสดงบันทึกเฉพาะจาก has_many ผ่านความสัมพันธ์ใน Rails3 ฉันมีสามรุ่น: class User < ActiveRecord::Base has_many :orders has_many :products, :through => :orders end class Products < ActiveRecord::Base has_many :orders has_many :users, :through => :orders end class Order < ActiveRecord::Base belongs_to :user, :counter_cache => true belongs_to :product, :counter_cache => true end สมมติว่าฉันต้องการแสดงรายการผลิตภัณฑ์ทั้งหมดที่ลูกค้าสั่งซื้อในหน้าแสดงของพวกเขา พวกเขาอาจสั่งซื้อสินค้าบางรายการหลายครั้งดังนั้นฉันจึงใช้ counter_cache เพื่อแสดงตามลำดับจากมากไปหาน้อยโดยพิจารณาจากจำนวนคำสั่งซื้อ แต่ถ้าพวกเขาสั่งซื้อผลิตภัณฑ์หลายครั้งฉันต้องตรวจสอบให้แน่ใจว่าผลิตภัณฑ์แต่ละรายการอยู่ในรายการเพียงครั้งเดียว @products …

22
วิธีรับการนำทาง Twitter-Bootstrap เพื่อแสดงลิงค์ที่ใช้งานอยู่
ฉันไม่เข้าใจว่า Twitter Bootstrap ทำลิงค์ที่ใช้งานอยู่สำหรับการนำทางได้อย่างไร หากฉันมีการนำทางเป็นประจำเช่นนี้ (โดยมีทับทิมบนรางเชื่อม): <ul class="nav"> <li class="active"> <a href="/link">Link</a> </li> <li class=""> <a href="/link">Link</a> </li> <li class=""> <a href="/link">Link</a> </li> </ul> ฉันจะทำให้มันใช้งานได้อย่างไรตามลิงค์ที่คลิก

13
Rails และ PostgreSQL: ไม่มีบทบาท postgres
ฉันได้ติดตั้ง PostgreSQL บน Mac OS Lion แล้วและกำลังทำงานกับแอปราง ฉันใช้ RVM เพื่อแยกทุกอย่างออกจากแอป Rails อื่น ๆ ด้วยเหตุผลบางประการเมื่อฉันพยายามย้ายฐานข้อมูลเป็นครั้งแรกคราดไม่พบผู้ใช้ postgres ฉันได้รับข้อผิดพลาด FATAL: role "postgres" does not exist ฉันมี pgAdmin ดังนั้นฉันจึงเห็นได้ชัดว่ามีผู้ใช้ postgres ในฐานข้อมูลซึ่งเป็นบัญชีผู้ดูแลระบบดังนั้นฉันจึงไม่แน่ใจว่าจะต้องทำอะไรอีก ฉันอ่านที่ไหนสักแห่งเกี่ยวกับผู้ที่มีปัญหากับ PostgreSQL เนื่องจากมีการติดตั้งพา ธ ไว้ แต่ฉันไม่คิดว่าจะไปได้ไกลขนาดนั้นหากไม่พบฐานข้อมูล

2
โพสต์ JSON เป็น API โดยใช้ Rails และ HTTParty
ฉันต้องการให้ผู้ใช้ภายในแอป Ruby on rail สามารถส่งตั๋วไปยังระบบจัดการตั๋วภายนอกของฉัน squishlist.com ได้ พวกเขามี api และคำแนะนำดังนี้ คุณต้องตรวจสอบสิทธิ์และรับโทเค็นจากนั้นจึงส่งตั๋วพร้อมโทเค็น จาก squishlist. # get the token https://api.squishlist.com/auth/?cfg=testcorp&user_key=privatekey&api_key=TEST-KEY-12345 => {"token": "authtoken", "expires": "2010-06-16 13:31:56"} # and then the ticket with the token https://api.squishlist.com/rest/?cfg=testcorp&token=authtoken&method=squish.issue.submit&prj=demo POST data: {'issue_type': 1, 'subject': 'Hello, world.', 4: 'Open', 5: 10} เพื่อวัตถุประสงค์ในการทดสอบฉันได้สร้างตัวควบคุมเส้นทางและมุมมอง (หน้า) สำหรับการทดสอบ บนคอนโทรลเลอร์ของฉันฉันมีสิ่งต่อไปนี้ require 'httparty' …

6
วิธีเพิ่ม 10 วันในเวลาปัจจุบันใน Rails
ฉันพยายามทำสิ่งที่ชอบ Time.now + 5.days แต่ก็ไม่ได้ผลแม้ว่าฉันจะจำได้ไม่ชัดว่าเห็นและประทับใจมากที่สามารถทำบางสิ่งบางอย่างเช่น2.yearsฯลฯ ฉันจะทำสิ่งนั้นใน Rails 3 ได้อย่างไร

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