12
테이블의 특정 열 뒤에 테이블에 열을 추가하려고했습니다. 는 여기에 내가 무슨 짓을 :ruby on rails 특정 열 이름 뒤에 열을 추가합니다.
class AddReactionIdToPatientAllergies < ActiveRecord::Migration
def change
add_column :patient_allergies, :reaction_id, :string
add_column :patient_allergies, :integer, :string
add_column :patient_allergies, :, :after
add_column :patient_allergies, :=, :string
end
end
내가 명령이 잘 된 것 같아요 :
여기rails generate migration add_reaction_id_to_patient_allergies reaction_id: integer :after => 'patient_id'
내 마이그레이션 파일의 모습입니다. 위의 파일에서 '='을 볼 수 있습니다. 나는 그것이 거기에 있어야한다고 생각하지 않는다. 누군가가 놓친다면 누군가 말해 줄 수 있습니까?
그렇다면 위의 내용을 어떻게 취소합니까?
@ 마이클이 위대한 답변에 한 가지 더 추가하면 성공적이지만 원치 않는 마이그레이션을 취소 할 수 있습니다. rake db : rollback - 가장 최근의 마이그레이션을 되돌립니다. 반복하여 더 멀리 나아갈 수 있습니다. 나는 종종 디폴트 값이나 열 순서를 설정하는 것과 같은 작은 개조를 원상태로 돌리고있다. – Polsonby
': after' 옵션은 [API 문서] (http://api.rubyonrails.org/classes)에 포함 된 것처럼 보이지 않는다. /ActiveRecord/Migration.html), 최소한 Rails 4.2.3에서. 시도한 후에 발견 : 마이그레이션이 잘되었지만 주문이 적용되지 않았습니다. – nandinga
@nandinga 최신 Rails의 [ColumnDefinition] (https://github.com/rails/rails/blob/master/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb#L13) 클래스는 여전히 지원됩니다 'after' 옵션을 사용했지만, 레일스의 마지막 몇 릴리즈에서 이것을 테스트하지는 않았습니다. – piersadrian