Rails를 처음 사용하므로 현재 프로젝트가 이상한 상태입니다.
내가 처음 생성 한 것 중 하나는 “영화”모델이었습니다. 그런 다음 더 자세히 정의하기 시작하고 몇 가지 방법 등을 추가했습니다.
이제 rails generate scaffold
라우팅, 뷰, 컨트롤러 등과 같은 것을 연결하기 위해 생성해야한다는 것을 알았 습니다.
스캐 폴딩을 생성하려고했지만 같은 이름의 마이그레이션 파일이 이미 존재한다는 오류가 발생했습니다.
“영화”에 대한 비계를 만드는 가장 좋은 방법은 무엇입니까? (레일 3 사용)
답변
TL; DR :rails g scaffold_controller <name>
이미 모델이 있지만 rails generate
옵션 을 사용하여 필요한 컨트롤러 및 마이그레이션 파일을 생성 할 수 있습니다 . 실행 rails generate -h
하면 사용 가능한 모든 옵션을 볼 수 있습니다.
Rails:
controller
generator
helper
integration_test
mailer
migration
model
observer
performance_test
plugin
resource
scaffold
scaffold_controller
session_migration
stylesheets
모델에 대한 컨트롤러 스캐 폴드를 생성하려면을 참조하십시오 scaffold_controller
. 명확성을 위해 여기에 대한 설명이 있습니다.
스캐 폴딩 된 컨트롤러와 해당 뷰를 스터브합니다. 모델 이름 CamelCased 또는 under_scored와 뷰 목록을 인수로 전달하십시오. 제어기 이름은 복수 버전의 모델 이름으로 검색됩니다.
모듈 내에 컨트롤러를 생성하려면 모델 이름을 ‘parent_module / controller_name’과 같은 경로로 지정하십시오.
앱 / 컨트롤러에서 컨트롤러 클래스를 생성하고 도우미, 템플릿 엔진 및 테스트 프레임 워크 생성기를 호출합니다.
리소스를 생성하려면 resource
생성기를 사용하고 마이그레이션을 생성하려면 migration
생성기를 볼 수도 있습니다 (이 광기에 패턴이 있음 참조). 이들은 누락 된 파일을 작성하여 자원을 빌드하는 옵션을 제공합니다. 또는 옵션을 rails generate scaffold
사용하여 --skip
존재하는 파일을 건너 뛸 수 있습니다. 🙂
발전기 내부의 옵션을 살펴 보는 데 시간을 할애하는 것이 좋습니다. 그것들은 내가 책과 같은 것들에 아주 잘 기록되어 있다고 생각하지 않지만 매우 편리합니다.
답변
에 의해 큰 대답 Lee Jarvis
, 이것은 단지 명령입니다; 이미 User라는 기존 모델이 있습니다.
rails g scaffold_controller User
답변
기존 데이터베이스로 rails 앱을 시작하는 사람들 schema_to_scaffold
에게는 스캐 폴드 스크립트를 생성하는 멋진 gem이 있습니다. 출력 :
rails g scaffold users fname:string lname:string bdate:date email:string encrypted_password:string
당신의에서 schema.rb
우리의 당신의 이름이 바뀐 schema.rb.
확인이
답변
에서 레일 오 , 당신은 여전히 실행할 수 있습니다
$rails generate scaffold movie --skip
누락 된 비계 파일을 모두 만들거나
rails generate scaffold_controller Movie
컨트롤러를 작성하고보기 만합니다.
더 나은 설명을 원하시면 레일 스캐 폴드를 확인하십시오
답변
이 명령은 트릭을 수행해야합니다.
$ rails g scaffold movie --skip
답변
모델 scaffold_controller
을 사용 하고 전달해야 attributes
합니다. 그렇지 않으면 속성없이 스캐 폴드가 생성됩니다.
rails g scaffold_controller User name email
# or
rails g scaffold_controller User name:string email:string
이 명령은 다음 파일을 생성합니다.
create app/controllers/users_controller.rb
invoke haml
create app/views/users
create app/views/users/index.html.haml
create app/views/users/edit.html.haml
create app/views/users/show.html.haml
create app/views/users/new.html.haml
create app/views/users/_form.html.haml
invoke test_unit
create test/controllers/users_controller_test.rb
invoke helper
create app/helpers/users_helper.rb
invoke test_unit
invoke jbuilder
create app/views/users/index.json.jbuilder
create app/views/users/show.json.jbuilder
답변
