세 개의 데이터베이스에 대해 별도의 마이그레이션이있는 Rails 5 응용 프로그램이 있습니다. 새 데이터베이스를 추가하고 있습니다. 나는 보통 rails g model field1:type1 field2:type2 field3:type
....을 사용하여 원하는 필드가있는 데이터베이스 테이블을 만듭니다. 나는 원하는 데이터베이스에 대한 모델을 생성하고 해당 db/migrate 폴더에 넣을 모델 문을 생성하려고합니다.커스텀 레일 생성 모델 생성 기능은 어떻게합니까?
lib/generators의 추가 데이터베이스에 대한 사용자 지정 데이터베이스 마이그레이션 생성기가 있습니다. 다음은 사용자 지정 마이그레이션 생성기의 예입니다.
lib/generators/stats_migration_generator.rb
require 'rails/generators/active_record/migration/migration_generator'
class StatsMigrationGenerator < ActiveRecord::Generators::MigrationGenerator
source_root File.join(File.dirname(ActiveRecord::Generators::MigrationGenerator.instance_method(:create_migration_file).source_location.first), "templates")
def create_migration_file
set_local_assigns!
validate_file_name!
migration_template @migration_template, "db_stats/migrate/#{file_name}.rb"
end
end
내가 lib 디렉토리/발전기/mydb_model_generator.rb 또는 어떤 올바른 파일 이름 구조는 각 추가 데이터베이스입니다를 작성해야 가정합니다. 나는 GitHub에서 model_generator.rb 파일을 본 후에 이런 식으로 할 수 있다고 생각하고있다.
- 어떻게 내가 필요로 할 필요가 무엇을 찾을 수 있습니까 :
lib/generators/stats_model_generator.rb require 'rails/generators/active_record/model/model_generator' class StatsModelGenerator < ActiveRecord::Generators::ModelGenerator source_root File.join(File.dirname(ActiveRecord::Generators::ModelGenerator.instance_method(:create_migration_file).source_location.first), "templates") def create_migration_file set_local_assigns! validate_file_name! migration_template @migration_template, "db_stats/migrate/#{file_name}.rb" end end
여기 레일, the Rails Guide regarding creating and customizing Generators과 루비 온 레일스 API 문서에 대한 자식 저장소에보고 한 후 내 질문은?
- db/migrate 폴더 이름을 덮어 쓸 필요가있는 방법을 찾으려면 어떻게합니까?
- 모델 생성기의 rb 파일 이름을 지정하는 방법은 무엇입니까?
모델 생성기를 만들 때 내 가정이 맞습니까?