>  기사  >  백엔드 개발  >  Yii2는 페이지에 "이전 페이지, 다음 페이지"에 대한 코드를 구현합니다.

Yii2는 페이지에 "이전 페이지, 다음 페이지"에 대한 코드를 구현합니다.

不言
不言원래의
2018-06-15 16:49:131685검색

이 글은 페이지에서 "이전 페이지, 다음 페이지"를 구현하기 위한 yii2의 코드를 주로 소개합니다. 이제 특정 참조 값이 있으므로 필요한 친구들이 참조할 수 있도록 공유합니다. 페이지 이전 기사와 다음 기사 버튼을 추가해야 합니다. 내용이 꽤 좋습니다. 지금 공유하고 참고용으로 제공하겠습니다.

최근 단답형 기사 세부정보 페이지를 만들었습니다. 페이지 하단에 이전 기사와 다음 기사 버튼을 추가해야 하는데, 분석 후 가장 기본적인 것은 기사 제목과 ID(매개변수)입니다.

가장 먼저 생각한 것은 현재 id에 1을 더하거나 빼는 것인데, id의 일부가 없어지면 틀리다는 점을 고려하여 현재 id보다 큰 레코드와 작은 레코드를 각각 쿼리하여 다음으로 제한합니다. 하나이므로 다음 코드가 있습니다.


코드는 다음과 같습니다. 잘못된 것이 있으면 알려주세요.


컨트롤러에서

//查询上-篇文章
    $prev_article = 你的模型::find()
      ->andFilterWhere([&#39;<&#39;, &#39;id&#39;, $id])
      ->andFilterWhere([其他条件)
      ->orderBy([&#39;id&#39; => SORT_DESC])
      ->limit(1)
      ->one();
    //查询下-篇文章
    $next_article = 你的模型::find()
      ->andFilterWhere([&#39;>&#39;, &#39;id&#39;, $id])
      ->andFilterWhere(其他条件)
      ->orderBy([&#39;id&#39; => SORT_ASC])
      ->limit(1)
      ->one();


    $model[&#39;prev_article&#39;] = [
      &#39;url&#39; => !is_null($prev_article) ? Url::current([&#39;id&#39;=>$prev_article->id]) : &#39;javascript:;&#39;,
      &#39;title&#39; => !is_null($prev_article) ? $prev_article->title : &#39;没有了&#39;,
    ];

    $model[&#39;next_article&#39;] = [
      &#39;url&#39; => !is_null($next_article) ? Url::current([&#39;id&#39;=>$next_article->id]) : &#39;javascript:;&#39;,
      &#39;title&#39; => !is_null($next_article) ? $next_article->title : &#39;没有了&#39;,
    ];

    return $this->render(&#39;view&#39;, 
      &#39;model&#39; => $model, 
    );

뷰에서


<p class="left">
    <p>上一篇:
      <a href="<?=$model[&#39;prev_article&#39;][&#39;url&#39;]?>">
        <?=$model[&#39;prev_article&#39;][&#39;title&#39;]?>
      </a>
    </p>
  </p>
  <p class="right">
    <p>下一篇:
      <a href="<?=$model[&#39;next_article&#39;][&#39;url&#39;]?>">
        <?=$model[&#39;next_article&#39;][&#39;title&#39;]?>
      </a>
    </p>
  </p>

위 내용은 는 이 글의 전체 내용이 여러분에게 도움이 되기를 바랍니다. 더 많은 관련 내용은 PHP 중국어 홈페이지를 참고해주세요!

관련 권장 사항:

YII 프레임워크에서 검색 페이징 jQuery를 작성하는 방법에 대해


yii2는 검색 기능으로 페이징 및 페이징을 구현합니다.


위 내용은 Yii2는 페이지에 "이전 페이지, 다음 페이지"에 대한 코드를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.