Ruby on Rails를 처음 사용했습니다.assigns() 메소드 대 바인딩 - 레일
테스트 케이스에서 컨트롤러 인스턴스 변수에 액세스하는 방법이 하나 이상 있음을 발견했습니다.
test "should get index" do
get :index
assert_response :success
assert_not_nil assigns(:products)
end
products
우려 제어기 내에 포함 된 인스턴스 변수이다 실제로
이 시험 방법을 가정한다. 그리고 확실히, 테스트 케이스는이 컨트롤러에 대한 참조를 가지고 있습니다. 따라서 assigns()
메서드는 컨트롤러의 인스턴스 변수 해시를 검사하기 위해이 메서드를 사용하므로 이전에이 컨트롤러에 작업을 호출 한 다른 모든 파일에서 미리 정의 된 개체에 액세스 할 수 있습니다.
왜 '바인딩'assigns()
방법을 사용하여 컨트롤러 대신하기 위해 생성하지 않습니다
그래서 나는 두 가지 질문을 궁금해?
test "should get index" do
get :index
assert_response :success
assert_not_nil @products
end
이 짧고 깨끗하지 않을까요 :
나는 그것을 할 수있는 버전을 상상?
구속력이 링크와 같이, ERB는 컨트롤러 인스턴스 변수에 액세스 할 파일 수있는 메커니즘 : 케이스를 테스트에 적용이 메커니즘없는 무엇
http://rrn.dk/rubys-erb-templating-system
를? assigns()
방법은 필수입니까?
설명 : 감사합니다. – Mik378