0
레일 5와 포스트 그레스 9.4를 사용하고 있습니다. 나는 두 테이블을 참조 할 수있는 두 개의 컬럼을 가지고 있습니다. 다른 테이블은 "encrypted_fields"라고합니다. 내 열 이름을 "enc_field1_encrypted_field_id"및 "enc_field2_encrypted_field_id"로 지정하고 싶습니다. 나는이 마이그레이션동일한 테이블을 참조하는 두 개의 열이있는 마이그레이션은 어떻게 만듭니 까?
class MySecureInfo < ActiveRecord::Migration[5.0]
def change
create_table :secure_accounts do |t|
t.references :encrypted_field, :enc_field1_encrypted_field_id, index: true, foreign_key: true
t.references :encrypted_field, :enc_field2_encrypted_field_id, index: true, foreign_key: true
end
end
end
을 시도하지만
PG::UndefinedTable: ERROR: relation "enc_field1s" does not exist
가 어떻게 오류를 방지하기 위해 내 이동을 조절 않는 아래의 오류 불면?
가 보이는 당신이 오타 ('encryptd_field')를 가지고있는 것처럼? 네 문제는 아니지만 뛰어 내렸을거야. – jvillian
전화하세요. 오타를 바로 잡았으나 오류가 남아 있습니다. – Dave
그 점이 보이지 않습니다. 열의 참조 유형은 모델을 다른 모델에 연결하는 데 사용됩니다. 그 일을 두 번 할 필요가 없습니다. 'enc_field1_encrypted_field_id'와'enc_field2_encrypted_field_id'는 모두 다른 테이블'encrypted_field'로부터 레코드의 같은 키를 가지고 있습니다. 여기 조금 할 수 있겠 니? – Maxence