[ruby-on-rails] 레일 콘솔이 루프 끝에서 개체를 인쇄하지 못하도록합니다.

예를 들어 주어진 모델의 모든 인스턴스를 반복하고 각각에서 무언가를 출력하면 결국 irb는 여전히 전체 객체를 인쇄합니다.

물체가 수백 줄을 차지하면 내가 실제로 찾고 있던 것을보기까지 먼 길을 갈 것입니다. Rails 콘솔에서 이것을 비활성화하는 방법이 있습니까?



답변

일반적으로 에코를 비활성화하지 않으려면 하나의 명령 줄에서 여러 표현식을 호출 할 수도 있습니다. 마지막 표현식의 출력 만 표시됩니다.

big_result(input); 0


답변

호출 conf.echo = false하면 반환 값이 인쇄되지 않습니다. 이것은 Rails 콘솔뿐만 아니라 모든 irb 세션에서 작동합니다.

영구적으로 만들려면 irb 구성에 추가하십시오.

echo 'IRB.conf[:ECHO] = false' >> $HOME/.irbrc


답변

콘솔이 반환 값을 인쇄하는 것을 일시적으로 중지하려면 nil루프 또는 함수의 끝에서 반환을 누르기 전에 문을 실행할 수 있습니다 .

record.each do |r|
  puts r.properties
end; nil

또는 입력을 줄이려면 숫자 일 수도 있습니다. 하지만 내가 생각할 수없는 시나리오에서는 혼란 스러울 수 있습니다.

record.each do |r|
  puts r.properties
end; 0


답변