상황 별 필터에서 산술을 수행하는 방법


9

컨텍스트 필터를 지정하는 대신 컨텍스트 필터 +1을 지정할 수 있습니다 (예 : 현재 필터 값에 필터를 추가 하시겠습니까?).

인수를 취하는 견해가있는 경우 원래의 인수를 사용하여 다른보기에 대한 링크를 만들기 위해 전역 텍스트 필드를 만들 수 있음을 이해합니다.

즉 view1 / arg1에 view2 / arg1에 대한 링크로 출력되는 전역 텍스트 필드를 가질 수 있습니다.

view2 / arg1 + 1에 대한 링크로 출력되는 전역 텍스트 필드를 만들 수 있습니까?

즉, 현재 인수에 하나를 추가합니까?

답변:


1

D7의 뷰 (D6에 대해서는 확실하지 않음)에서 "Math expression"유형의 필드를 추가하여 이런 종류의 작업을 수행 할 수 있습니다. 수학 표현식 필드에 표현식 [!1]+1(또는 가능 [%1]+1)을 입력 한 후 나중에 텍스트 필드는이 값 (재 작성 섹션에서)을로 참조 할 수 있습니다 [expression].


0

PHP는 일반적으로 내 대답이지만, Contextual Filters에서 PHP를 아직 지원 하지 않는 것 같습니다 ...

따라서 자신에게 모듈을 만든 다음 다음을 수행해야합니다.

나는 당신의 첫 번째 주장이 당신이 바꾸고 싶은 주장이라고 가정하고 있으며, 지금 당장 시험해 볼 수있는 견해를 가지고 있지 않으므로 print_r($ query-> where [0]);`를 확인해야합니다. 거기에 가서 올바른 값을 추가하십시오.


0

이런 식으로하십시오.

<?php
  $view = views_get_current_view();
  $arg = $view -> args[0];
  $newarg = intval($arg) + 1;
?>
<a href="https://drupal.stackexchange.com/view2/<?php print($newarg); ?>">Increment my contextual filter</a>

0

뷰에 대한 뷰 템플릿을 생성하고 아래와 같이 할 수 있습니다.

<?php $arg = arg(1);  ?>
<a href="<?php print base_path() . 'view2/' . ($arg + 1) ;?>">Link to view</a>  
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.