私はLaravelとTwigに基づいてOctoberCMSを使って簡単なギャラリーを作っています。カテゴリでレコードをフィルタリングする方法Laravel Twig?
カテゴリごとにレコードをフィルタリングするにはどうすればよいですか?ここで
は、私は今それをやっている方法ですが、私は、これは良い解決策だとは思わない:私はHTMLをフィルタリング
が、完全なレコードがまだ引き起こし、カテゴリ外のすべてのアイテムのために存在します余分なページ番号と空白ページ。
データベース
Aテーブル 'ギャラリー' は、カテゴリ名のリストを保持しています。
テーブル '画像'は、画像名とそのタグ付けされたカテゴリを保持します。
画像一覧
URLパラメータ/ギャラリー/です:カテゴリ/:?ページは?
/gallery/nature/1のようなURLを訪問すると、forループを使用してカテゴリ別に画像をフィルタリングします。
<!-- Gallery Category Record Variable -->
{% set category = record.category %}
<!-- Image List -->
{% for record in records %}
<!-- If Image Category Tag matches Gallery Category Name -->
{% if record.category_tag == category %}
<img src="/{{ record.name }}.jpg">
{% endif %}
{% endfor %}
レコード '記録' と '記録' の
結果。
forループは 'images→category_tag'レコードに 'gallery→category'レコードを表示しています。
ページネーションはすべての「画像→名前」レコードを表示しています。
{% for record in records %} = (All in 'images')
{{ records }} = {<ul><li>...<a href="gallery/nature?page=2">2</a>} (All in 'images')
{{ record }} = {"category":"nature","id":7} (Current category in 'gallery')
解決策?
htmlリストを生成する前にカテゴリ別に 'レコード'をフィルタリングする方法はありますか?
わからないからインスピレーションを得た
回答は、それは単純にそれを渡す前に、条件と一致するレコードをフェッチすることではありません景色? 'Gallery :: where( 'category_id'、$ catId) - > get()'のようなものです。もちろん、パラメータ –
@ChristopherFranciscoから取得した名前を使用してカテゴリIDを取得する必要があります。OctoberCMSを使用して、レコードリストまたはレコードの詳細をドラッグアンドドロップし、モデルクラスと表示列を設定します。そこから、Twig構文を使ってレコードを使用することができます。私はこれを初めて使っていて、小枝の外でLaravelを使っています。 –
私の悪いのは、OctoberCMSのリンクがページ区切りページにリダイレクトされているので、ページネーションのコンポーネント(名前がCMSだと言っても、ばかげて私はハハ)と思った。 –