복붙노트

[RUBY-ON-RAILS] 레일 4 : before_filter 대 before_action

RUBY-ON-RAILS

레일 4 : before_filter 대 before_action

레일> 4.0.0 생성기하지 before_filter before_action와 CRUD 작업을 생성한다. 이 같은 일을 할 것으로 보인다. 그래서이 둘 사이의 차이점은 무엇입니까?

해결법

  1. ==============================

    1.우리가 ActionController :: 자료에서 볼 수 있듯이, before_action는 before_filter 단지 새로운 구문입니다.

    우리가 ActionController :: 자료에서 볼 수 있듯이, before_action는 before_filter 단지 새로운 구문입니다.

    그러나 레일 5.0에서 사용되지되고 구문 모든 before_filters 레일 5.1에서 제거 될 예정입니다

  2. ==============================

    2.그것은 레일에 CRUD가 앱 이름 지수, 새, 생성, 쇼, 업데이트, 편집에 의해 기본적으로 일곱 개 행동은 파괴, 단지 구문 차이입니다.

    그것은 레일에 CRUD가 앱 이름 지수, 새, 생성, 쇼, 업데이트, 편집에 의해 기본적으로 일곱 개 행동은 파괴, 단지 구문 차이입니다.

    필터 전에 행동 이전에 변경 구문 친화적 인 4 메이크업이 개발자 레일.

    우리가 선언하는 행위, 전 before_action 호출 방법 등

    before_action :set_event, only: [:show, :update, :destroy, :edit]
    

    set_event 쇼, 업데이트 편집하기 전에 항상 전화를 파괴하는 방법입니다.

  3. ==============================

    3.그냥 이름을 변경합니다. 이 작업 전에 실행됩니다 때문에 before_action은 더 구체적이다.

    그냥 이름을 변경합니다. 이 작업 전에 실행됩니다 때문에 before_action은 더 구체적이다.

  4. ==============================

    4.before_filter / before_action : 수단의 아무것도 조치가 실행 전에 실행합니다.

    before_filter / before_action : 수단의 아무것도 조치가 실행 전에 실행합니다.

    모두 동일합니다. 자신의 행동이 동일 그들이 서로에 대해 단지 별칭이다.

  5. ==============================

    5.before_action와 before_filter의 차이점이 무엇인지 알아 내기 위해, 우리는 행동과 필터 사이의 차이를 이해해야합니다.

    before_action와 before_filter의 차이점이 무엇인지 알아 내기 위해, 우리는 행동과 필터 사이의 차이를 이해해야합니다.

    액션은에 당신이 할 수있는 노선 컨트롤러의 방법입니다. 예를 들어, 사용자 생성 페이지가 UsersController # 새로운 라우팅 될 수있다 - 새로운이 경로에있는 작업입니다.

    필터는 컨트롤러 액션에 대하여 실행 - 전, 후 또는 주위. 이러한 방법은 재전송하여 작업 처리를 중단 또는 제어기의 모든 동작에 공통의 데이터를 설정할 수있다.

  6. from https://stackoverflow.com/questions/16519828/rails-4-before-filter-vs-before-action by cc-by-sa and MIT license