1
그래서 다음과 같은 마이 그 레이션 - 일반적인 등급 테이블을 사용하여 주석에 대한 등급 (값)을 캡처합니다. 나는 기본 키 (pk), 외래 키 (fk), 인덱스 (인덱스)에 대한 몇 가지 도우미 메서드가 있습니다.레일 마이그레이션 문제 - 외래 키가 생성되지 않음
모든 것이 잘 실행되지만이 문이 오류를보고하지는 않지만 comment_id의 foregn 키가 생성되지 않는다는 점에 유의하십시오. 어떤 도움을 주시면 감사하겠습니다. 감사.
는
class CreateRatings < ActiveRecord::Migration
extend MigrationHelpers
def self.up
create_table :ratings, :id => false do |t|
t.integer :comment_id, :null => false
t.integer :user_id, :null => false
t.integer :value, :null => false, :limit => 1
t.timestamps
end
pk :ratings, %w{ comment_id user_id }
fk :ratings, :comment_id, :comments, true
fk :ratings, :user_id, :users
index :ratings, %w{ comment_id value }
end
하지만 데이터베이스에서 제약 조건을 만들지는 않습니다. 단지 열 정의 만 생성합니다. 권리? – kapso
네,이 제약 조건을 만들지 않을거야, 그냥 열을 추가합니다.하지만 데이터베이스에 대한 제약 조건을 적용하려면 Model 클래스와 상호 작용해야합니다. – gsoni