ruby-on-rails - 라우팅 - 루비온레일즈 쇼핑몰




모든 RESTful 함수가있는 컨트롤러 생성 (7)

스텁 된 모든 RESTful 액션이있는 컨트롤러를 생성하려고합니다. 나는 링크 텍스트 에서 내가해야 할 일은 단지 컨트롤러 이름으로 발전기 호출을 사용하는 것이 었습니다. 그래서, 나는 "script / generate rspec_controller Properties"를 실행 시켰고 나는 빈 컨트롤러를 얻었다.

다른 모든 의견은 크게 감사하겠습니다.


Rails 3에는 rails generate scaffold_controller ... 도있다. 더 많은 정보는 here .


Rails 4/5에서 다음 명령이 나를 대신합니다.

rails g scaffold_controller Property --skip-template-engine

제어기 조치가 생성되었지만보기는 생성되지 않았습니다.


script / generate rspec_scaffold 속성


당신은 비계를 찾고 있습니다.

시험:

script/generate scaffold Property

이렇게하면 컨트롤러, 모델, 마이그레이션 및 관련 테스트가 제공됩니다. --skip-migration 옵션을 --skip-migration 하여 마이그레이션을 건너 뛸 수 있습니다. 다른 사람들을 원하지 않으면 직접 삭제해야합니다. 기존 파일을 덮어 쓰는 것에 대해 걱정하지 마십시오. --force 를 사용하지 않으면 그렇게되지 않습니다.

주석에서 Klew가 지적했듯이, 이것은 또한 이름뿐만 아니라 여러분을위한 메소드 바디 를 정의합니다. REST 컨트롤러의 시작점으로 사용하는 것이 매우 유용합니다.


자동화 된 방법에 대해서는 잘 모르지만 다음과 같은 경우 :

script/generate controller your_model_name_in_plural new create update edit destroy index show

그들 모두는 당신을 위해 창조 될 것입니다.

Rails 4 업데이트

rails g scaffold_controller Property

한 가지 해결책은 하나의 매개 변수 인 컨트롤러 이름을 허용하고 스크립트가 전체 명령을 입력하게하는 스크립트를 만드는 것입니다.

  1. railsgcontroller와 같은 새 파일 만들기
  2. 실행 파일로 만들고 경로에 저장하십시오.
  3. 다음과 같이 실행하십시오 : $ railsgcontroller Articles
die () {
    echo "Please supply new rails controller name to generate."
    echo >&2 "[email protected]"
    exit 1
}

[ "$#" -eq 1 ] || die "1 argument required, $# provided"

rails g controller "$1" new create update edit destroy show index

편집 (일부 의견으로 인해) : 원래 질문은 2010 년이었습니다 - 따라서 대답은 레일 4가 아니라 레일 2입니다!

스캐 폴딩을 사용해보십시오.

script/generate scaffold controller Properties

Ruby On Rails의 공식 문서 섹션

레일 스 캐 폴딩에서 Google 검색을 수행하면 더 많은 정보를 찾을 수있을 것으로 확신합니다. 희망이 도움이됩니다.

편집 : RAILS 4

rails g scaffold_controller Property







rspec