2015-01-30 3 views
3

를 호출/취소?레일 4 사용자 정의 생성기, 간단한 사용자 정의 생성기 감안할 때

$ rails destroy custom_model ModelName 

실제로이 제네레이터는 생성 방법을 사용하여 기존 레일스 생성기를 사용합니다. 그러나 나는이 생성물을 뒤집을 방법을 찾지 못했습니다. ,

case self.behavior 
    when :invoke 
    # do that stuff 
    when :revoke 
    # undo it! 
    end 

나는이 웹 전체의에 대해 많은 빨간색 :

나는 (기존 발전기를 호출하지 않음), 그리고 내 자신의 "파괴"루틴을 작성 내 자신의 발전을 위해 이것을 사용하는 데 사용 관련성이 없거나 최신 정보는 없습니다. 따라서 어떤 조언도 환영 할만한 것이 아닙니다.

읽어 주셔서 감사합니다.

답변

1

당신은 (물론 당신이 다른 발전기와 :scaffold을 대체 할 수 있습니다) 다음 코드 조각을 사용할 수 있습니다

case self.behavior 
    when :invoke 
    generate :scaffold, "#{file_name} #{attributes}" 
    # Or equally: 
    # Rails::Generators.invoke :scaffold, args, :behavior => :invoke 
    when :revoke 
    Rails::Generators.invoke :scaffold, [file_name], :behavior => :revoke 
end 
관련 문제