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

Ruby on Rails เป็นกรอบการพัฒนาเว็บโอเพนซอร์ซที่เขียนใน Ruby Ruby on Rails เป็นไปตามหลักการของการประชุมเกี่ยวกับการตั้งค่าช่วยให้คุณไม่ต้องคิดค้นสิ่งใหม่เพื่อให้ทำงานได้อย่างมีประสิทธิภาพ ใช้แท็กนี้เฉพาะสำหรับคำถามเฉพาะของ Rails 3 และติดแท็กคำถามเหล่านั้น [ruby-on-rails]


8
ไม่สามารถเรียกใช้งาน“ rail console” ได้เนื่องจากมีข้อผิดพลาดกับ readline
ฉันไม่สามารถดำเนินการได้rails consoleเนื่องจากข้อผิดพลาดนี้: localhost:TwitterForZombies wiz$ rails c /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `require': dlopen(/Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib (LoadError) Referenced from: /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle Reason: image not found - /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `<top (required)>' from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands/console.rb:3:in `require' from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands/console.rb:3:in `<top (required)>' from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:38:in `require' from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:38:in `<top (required)>' from script/rails:6:in `require' from script/rails:6:in `<main>' ฉันติดตั้ง readline …

15
รางติดตั้ง pg - ไม่พบส่วนหัว 'libpq-fe.h
$ sudo bundle install ผลลัพธ์ Fetching gem metadata from https://rubygems.org/........... Fetching gem metadata from https://rubygems.org/.. Using rake (0.9.2.2) Using i18n (0.6.1) Using multi_json (1.3.6) Using activesupport (3.2.8) Using builder (3.0.4) Using activemodel (3.2.8) Using erubis (2.7.0) Using journey (1.0.4) Using rack (1.4.1) Using rack-cache (1.2) Using rack-test (0.6.2) Using hike …

3
Rails Admin กับ ActiveAdmin [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดขึ้นมาใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ฉันได้ดูปลั๊กอินผู้ดูแลระบบรางและเจอสิ่งเหล่านี้: https://github.com/gregbell/active_admin https://github.com/sferik/rails_admin https://github.com/thoughtbot/administrate (แก้ไข: เพิ่มในภายหลัง) มีข้อเสนอแนะว่าจะไปด้วยประการใด ฉันต้องการมันเพื่อรองรับการเชื่อมโยงโมเดลและความสามารถในการอัพโหลดไฟล์

2
Rails บันเดิลติดตั้งการผลิตเท่านั้น
ฉันยังใหม่กับราง / ทับทิม / มัดและสับสนเล็กน้อย ในconfig/application.rbไฟล์ของเรามีส่วนบันเดิลเลอร์นี้: if defined?(Bundler) # If you precompile assets before deploying to production, use this line Bundler.require(*Rails.groups(:assets => %w(development test))) # If you want your assets lazily compiled in production, use this line # Bundler.require(:default, :assets, Rails.env) end และในของGemfileเราเราใช้กลุ่มต่างๆเช่น group :development, :test do gem "rspec-rails", ">= …

5
เลิกใช้การเข้าถึงวิธีการ Rake DSL ทั่วโลกแล้ว
ฉันกำลังทำงานผ่านหนังสือบทช่วยสอน Ruby on Rails 3 และพิมพ์คำสั่งต่อไปนี้ในบรรทัดคำสั่ง: rake db:migrate ซึ่งก่อให้เกิดคำเตือนต่อไปนี้ WARNING: Global access to Rake DSL methods is deprecated. Please Include ... Rake::DSL into classes and modules which use the Rake DSL methods. WARNING: DSL method DemoApp::Application#task called at /Users/imac/.rvm/gems/ruby-1.9.2-p180@rails3tutorial/gems/railties-3.0.7/lib/rails/application.rb:215:in `initialize_tasks' ฉันไม่แน่ใจว่าจะทำอย่างไรกับมันหรือจะทำงานกับมันอย่างไร ฉันไม่รู้คำสั่งอื่นใดสำหรับ Rake ฉันจะแก้ไขปัญหานี้ได้อย่างไร?

13
สตริง "จริง" และ "เท็จ" เป็นบูลีน
ฉันมีแอปพลิเคชัน Rails และฉันใช้ jQuery เพื่อค้นหามุมมองการค้นหาของฉันในพื้นหลัง มีสาขาอยู่q(คำค้นหา) start_date, และend_date ฟิลด์เป็นช่องทำเครื่องหมายและฉันใช้วิธีการในการสร้าง URL ที่ถูกสอบถาม:internalinternalis(:checked) $.getScript(document.URL + "?q=" + $("#search_q").val() + "&start_date=" + $("#search_start_date").val() + "&end_date=" + $("#search_end_date").val() + "&internal=" + $("#search_internal").is(':checked')); ตอนนี้ปัญหาของฉันเกิดขึ้นparams[:internal]เนื่องจากมีสตริงที่ประกอบด้วย "จริง" หรือ "เท็จ" และฉันจำเป็นต้องแคสต์เป็นบูลีน แน่นอนว่าฉันทำได้ดังนี้: def to_boolean(str) return true if str=="true" return false if str=="false" return nil end แต่ฉันคิดว่าต้องมีวิธีที่ Ruby'ish มากกว่านี้ในการจัดการกับปัญหานี้! …

5
ใช้ Rails link_to สำหรับลิงก์ที่โพสต์
ฉันมีลิงค์ที่ต้องส่งคำขอโพสต์ โดยปกติฉันจะใช้ jQuery และป้องกันพฤติกรรมเริ่มต้นของลิงก์จากนั้นส่งแบบฟอร์มไปยังปลายทาง ดูเหมือนว่า Rails น่าจะช่วยฉันได้บ้าง แน่นอนว่าlink_toวิธีนี้มีตัวเลือกสำหรับการระบุวิธีการ POST http: link_to "Profile", 'http://example.com/profile', method: :post ใช้งานได้ แต่ฉันต้องเพิ่มพารามิเตอร์ 2 ตัวด้วย ฉันเหนื่อย: link_to "Profile", 'http://example.com/profile', method: post, param1: 'value1', param2: 'value2' ที่เพิ่งเพิ่มพารามิเตอร์เหล่านั้นลงใน<a>องค์ประกอบ HTML แต่ไม่ได้ส่งพารามิเตอร์เหล่านั้นเมื่อคลิกลิงก์: <a rel="nofollow" param1="value1" param2="value2" data-method="post" href="http://example.com/profile">Profile</a> มีวิธีทำคำขอ POST พร้อมพารามิเตอร์โดยใช้link_toหรือวิธี Rails อื่น ๆ หรือไม่? ฉันใช้ Rails 3.2.9

7
จะตรวจสอบได้อย่างไรว่าตัวเลขรวมอยู่ในช่วง (ในคำสั่งเดียว) หรือไม่?
ฉันใช้ Ruby บน Rails 3.0.9 และฉันต้องการตรวจสอบว่ามีตัวเลขรวมอยู่ในช่วงหรือไม่ นั่นคือถ้าฉันมีตัวแปรnumber = 5ฉันต้องการตรวจสอบ1 <= number <= 10และดึงค่าบูลีนหากnumberค่านั้นรวมอยู่ในช่วงนั้น ฉันทำได้ดังนี้: number >= 1 && number <= 10 แต่ฉันอยากจะทำในคำสั่งเดียว ฉันจะทำเช่นนั้นได้อย่างไร?

7
Rails 3: จะ“ redirect_to” ใน Ajax call ได้อย่างไร?
attempt_loginวิธีการต่อไปนี้เรียกว่าโดยใช้ Ajax หลังจากส่งแบบฟอร์มการเข้าสู่ระบบ class AccessController < ApplicationController [...] def attempt_login authorized_user = User.authenticate(params[:username], params[:password]) if authorized_user session[:user_id] = authorized_user.id session[:username] = authorized_user.username flash[:notice] = "Hello #{authorized_user.name}." redirect_to(:controller => 'jobs', :action => 'index') else [...] end end end ปัญหาคือredirect_toไม่ได้ผล คุณจะแก้ปัญหานี้อย่างไร?

6
ไวยากรณ์ที่จะข้ามการสร้างการทดสอบเนื้อหาและตัวช่วยสำหรับ "รางสร้างตัวควบคุม"?
ฉันอ่านวิธีใช้และลองใช้คำสั่งต่อไปนี้เพื่อข้ามการสร้างการทดสอบเนื้อหาและไฟล์ตัวช่วย $ bin/rails generate controller home index --helper false --assets false --controller-specs false --view-specs false create- app/controllers/home_controller.rb route get "home/index" invoke erb create app/views/home create app/views/home/index.html.erb invoke rspec error false [not found] error false [not found] ดังที่คุณอาจสังเกตเห็นจากผลลัพธ์ด้านบนนี้ใช้งานได้ & เท่านั้นcontroller, routes& viewsถูกสร้างขึ้น แต่สองบรรทัดสุดท้ายน่าสนใจ: error false [not found] error false [not found] …

14
Ruby on Rails 3 ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ในเครื่องผ่านซ็อกเก็ต '/tmp/mysql.sock' บน OSX
ฉันมีสภาพแวดล้อม Rails3 มาตรฐาน, RVM 1.2.9, Rails 3.0.5, Ruby 1.9.2p180, MySQL2 Gem 0.2.7, mysql-5.5.10-osx10.6-x86_64 ข้อผิดพลาดที่ฉันได้รับเมื่อเรียกใช้rake db:migrateเพื่อสร้างฐานข้อมูลคือ: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) config / database.yml มี development: adapter: mysql2 host: localhost username: root password: xxxx database: xxxx แน่ใจว่ามันเป็นอะไรง่ายๆที่ฉันขาดหายไป

5
ตรวจสอบความถูกต้องในข้อกำหนดคำขอ
เมื่อเขียนข้อมูลจำเพาะของคำขอคุณจะกำหนดวิธีการเซสชันและ / หรือตัวควบคุมต้นขั้วได้อย่างไร? ฉันพยายามที่จะตัดการรับรองความถูกต้องในการทดสอบการรวม - rspec / request นี่คือตัวอย่างของการทดสอบ require File.dirname(__FILE__) + '/../spec_helper' require File.dirname(__FILE__) + '/authentication_helpers' describe "Messages" do include AuthenticationHelpers describe "GET admin/messages" do before(:each) do @current_user = Factory :super_admin login(@current_user) end it "displays received messages" do sender = Factory :jonas direct_message = Message.new(:sender_id => sender.id, :subject => …

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 (เพื่อส่งผ่านพารามิเตอร์ที่ถูกต้อง) หรือไม่
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.