バージョン選択

フォーラム

メニュー

オンライン状況

59 人のユーザが現在オンラインです。 (46 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 59
もっと...

サイト内検索

質問 > フロント機能 > ルーティングが動的なページにページネーションを設置したい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
h_tanaka
投稿日時: 2018/1/31 12:59
対応状況: 解決済
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1638
ルーティングが動的なページにページネーションを設置したい
EC-CUBE3.0.15

独自に作成したページのURLにおいて、カテゴリーIDをルーティングに指定しています。

src/Eccube/ControllerProvider/FrontControllerProvider.php
        $c->match('/topics/list/{id}', '\Eccube\Controller\TopicsController::index')->bind('topics_list')->assert('id', '\d+');


このページのtwigにページネーションを設置しようとしたのですが、エラーになってしまいます。
どうすれば解決できるでしょうか?

■エラー内容
Twig_Error_Runtime in pagination.twig line 56:
An exception has been thrown during the rendering of a template ("Some mandatory parameters are missing ("id") to generate a URL for route "topics_list".").

src/Eccube/Controller/TopicsController.php
    public function index(Application $app, Request $request, $id = null)
    {
        $ArticleList = array();

        // $ArticleList取得処理

        $pagination = $app['paginator']()->paginate(
            $ArticleList,
            $request->get('pageno', 1),
            $app['config']['search_pmax']
        );

        return $app->render('Topics/list.twig', array(
            'pagination' => $pagination,
        ));
    }


app/template/default/Topics/list.twig
				    {% if pagination.totalItemCount > 0 %}
				        {% include "pagination.twig" with { 'pages' : pagination.paginationData } %}
				    {% endif %}


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

468
投稿日時: 2018/1/31 20:03
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: ルーティングが動的なページにページネーションを設置したい
多分、ルーティングの記述がidが必須になっているのではないでしょうか?
以下の記述で、idを指定していない場合、nullが渡るようになるのではないかと思います。

$c->match('/topics/list/{id}', '\Eccube\Controller\TopicsController::index')->bind('topics_list')->assert('id', '\d+')->value('id', null);


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

h_tanaka
投稿日時: 2018/2/1 9:22
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1638
Re: ルーティングが動的なページにページネーションを設置したい
468さん

ありがとうございます!
ご教授通り、ルーティングに次の記述を追記したら想定通りの動作になりました。
->value('id', null)


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,707名です
総投稿数は109,948件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1570
9
mcontact
1285
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.