문제

Rails 2.1이므로 다음 유형으로 설정된 마이그레이션에서 새 열을 정의하면 다음과 같이 설정하고 다음과 같이 설정하면 : 제한이 5 이상으로 설정되면 MySQL 데이터베이스에서 실제로 생성 된 열은 Bigint 유형입니다. 저건 완벽 해.

그러나 큰 기본 키가있는 테이블을 만드는 방법을 알 수 없습니다.

단서가 있습니까?

도움이 되었습니까?

해결책

나는 방금 우연히 발견했다 이 플러그인:이 질문에 대답하는 것 같습니다.

다른 팁

이것은 레일 3에서 작동합니다. 레일 2에서 작동하는지 확실하지 않습니다.

내 앱 전체에 걸쳐 기본 키가 서명되지 않도록해야했습니다. 내가 한 일은 Config/Environment.rb를 넣는 것이 었습니다.

require 'active_record/connection_adapters/mysql2_adapter'
ActiveRecord::ConnectionAdapters::Mysql2Adapter::NATIVE_DATABASE_TYPES[:primary_key] =
  "BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY".freeze

이렇게하면 레일이 자동으로 ID를 Bigints로 생성 할 수 있습니다. 다른 테이블에서 굴복 할 때 다음을 수행합니다.

t.column :product_id, 'BIGINT UNSIGNED'
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top