คำเตือน: ค่าคงที่ :: Fixnum เลิกใช้งานเมื่อสร้างโมเดลใหม่


88

ฉันพยายามหาวิธีแก้ปัญหานี้แล้ว แต่ฉันไม่พบสิ่งที่เกี่ยวข้องกับข้อผิดพลาดที่ปรากฏแก่ฉันเมื่อฉันเรียกใช้คำสั่ง rail:

รางสร้างชื่อหนังสือรุ่น: สรุปสตริง: ข้อความ isbn: สตริง

/home/vmu/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/xml_mini.rb:51: warning: constant ::Fixnum is deprecated
/home/vmu/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/xml_mini.rb:52: warning: constant ::Bignum is deprecated
/home/vmu/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/core_ext/numeric/conversions.rb:138: warning: constant ::Fixnum is deprecated
Running via Spring preloader in process 3579
Expected string default value for '--jbuilder'; got true (boolean)
      invoke  active_record
   identical    db/migrate/20170104114702_create_books.rb
   identical    app/models/book.rb
      invoke    test_unit
   identical      test/models/book_test.rb
   identical      test/fixtures/books.yml

ใครทราบว่าสิ่งใดที่อาจทำให้เกิดข้อผิดพลาดเหล่านี้

คำตอบ:


86

คำเตือนนี้ปรากฏขึ้นเนื่องจากคุณใช้ Ruby 2.4.0

เวอร์ชันนี้นำการเปลี่ยนแปลงนี้มาใช้: รวม Fixnum และ Bignum เป็นจำนวนเต็ม

ดูประกาศที่นี่: https://www.ruby-lang.org/en/news/2016/12/25/ruby-2-4-0-released/

คำเตือนมาจากอัญมณีการสนับสนุนที่ใช้งานอยู่ซึ่งเป็นส่วนหนึ่งของรางและจะได้รับการแก้ไขในการเปิดตัวครั้งต่อไป

ตอนนี้คุณสามารถเพิกเฉยต่อคำเตือนเหล่านั้นได้

อัปเดต: Rails 5.0.2 ได้รับการเผยแพร่ซึ่งกำจัดคำเตือน


1
ฉันใช้ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-darwin16]แต่ยังได้รับปัญหานี้
เครื่องบิน

1
ฉันจะเพิกเฉยต่อคำเตือนได้อย่างไร การวิ่ง "ทางรถไฟ" ล้มเหลว
เซารอน

@Sauron ไม่ควรล้มเหลวเพราะคำเตือน บางทีคุณอาจมีข้อผิดพลาดเพิ่มเติม?
IngoAlbers

19

ฉันแก้ไขของฉันด้วยการอัปเดตราง

bundle update rails

1
สิ่งนี้ใช้ได้ผลสำหรับฉันจนกว่าจะเปิดเทอร์มินัลใหม่: bundle update geocoderได้รับข้อผิดพลาดต่อไปนี้อีกครั้งก่อนที่คอนโซลรางจะเริ่ม:/home/moi/.rvm/gems/ruby-2.4.0/gems/geo-distance-0.2.2/lib/geo-distance/core_ext.rb:13: warning: constant ::Fixnum is deprecated
Forrest Wilkins

9

ฉันคิดว่าคุณกำลังใช้ Rails 5? ตรวจสอบลิงค์นี้ (ทางด้านล่าง) ดูเหมือนคำเตือนเหล่านี้จะหายไปเมื่อมีการเปิดตัว # 27458


8

หากคำเตือนการเลิกใช้งานเหล่านี้ในการสนับสนุนที่ใช้งานอยู่เป็นคำเตือนเดียวที่คุณเห็นคุณสามารถควบคุมได้โดยส่งผ่านตัวแปรทุบตี RUBYOPT พร้อมตัวเลือก -W0 ซึ่งจะปิดปาก

แทนที่จะrails server ลอง: RUBYOPT="-W0" rails serverหรือRUBYOPT="-W0" bin/rails server

ในราง 5.0 คุณอาจต้องการสร้างนิสัยในการใช้ถัง / รางไม่ใช่แค่รางเนื่องจากเป็นเวอร์ชันรางส่วนกลางซึ่งอาจหรือไม่เหมือนกับรุ่นรางในพื้นที่ของคุณ


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