몇 주 전에 Ruby on Rails를 배우기 시작했고, 스캐 폴딩을 사용하지 않고 명령 행에서 다양한 부분을 생성함으로써 많은 일들을 처리하고 길을 배우는 것이 훨씬 쉬워졌습니다. 또는 IDE의 매크로).
그러나 내가 말할 수있는 것에서는 스 캐 폴딩을 사용하여 물건을 생성 할 때 "자원"을 생성한다고 생각하기 때문에 한 번에 하나의 자원 만 생성 한 다음 관계를 추가합니다 나중에 손으로.
그러나 모델 생성 명령은 이러한 관계를 생성 할 수 있습니다. 스캐 폴딩을 사용하여 Scale 리소스를 생성했다고 가정 해 보겠습니다. 참조가 GuitarString 모델에 belongs_to :scale
을 만들 것입니다,하지만 당신은 has_many 추가해야합니다 :
그런 다음
ruby script/generate model GuitarString name:string scale:references
규모를 할 수있는 저울 모델에 guitarstrings을.
generate model 명령은 스캐 폴딩과 유사하게 필요한 기타 파일 (Fixtures)을 생성하지만보기 나 컨트롤러 또는 기타 항목을 자동 작성하지 않습니다.
편집 :
이것은 당신이 일을 할 것 방법을 일반적으로합니다 - 생성/모델/또는보기를 생성하거나/컨트롤러를 생성하거나/마이그레이션을 생성 사용합니다. 대부분의 Rails 개발자는 스캐 폴딩을 사용하지 않습니다. 왜냐하면 "하나의 크기가 모두 적합합니다"는 거의 완벽하게 맞지 않기 때문입니다. 그러나 대부분의 레일 개발자는 앞서 언급 한 생성 명령을 사용합니다. 손으로 도우미 및 조명기를 만드는 데 시간을 절약 할 수 있으며 생성하는 각 파일에 추가 할 수있는 기본 템플릿을 제공합니다.
JetBrain의 RubyMine과 같은 Ruby IDE에는 기본적으로 이러한 명령을 수행하는 매크로가 있습니다. RubyMine에서 ctrl + alt + g을 수행 한 다음 생성하려는 항목에 해당하는 다른 키를 입력 할 수 있습니다.
앞서 언급했듯이 belongs_to 관계는 "references"단어를 사용하여 생성 할 수 있습니다. 기타 당신은 손으로 추가 할 것입니다.
가능한 복제본 http://stackoverflow.com/questions/502119/rails-scaffold-to-automatically-do-one-to-many-relationship – hobodave
@hobodave : silimar, 예. 그는 "할 수 있을까?"라고 묻습니다. 그리고 나는 "이걸 어떻게 할 것인가?"라고 묻습니다. – Simon
내 대답에서 편집을 확인하고 싶을 수 있습니다. –