# Filter Tutorials by Category

**URL:** <https://community.glideapps.com/t/filter-tutorials-by-category/82063>\
**Category:** Ask for Help\
**Created:** [May 26, 2025, 3:34pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063 "2025-05-26T15:34:59Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![Frameit](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/frameit/32/87465_2.png) [@Frameit](https://community.glideapps.com/u/Frameit)\
**Post date:** [May 26, 2025, 3:34pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/1 "2025-05-26T15:34:59Z")

</div>

I want to create a feature on my tutorials tab which allows users to filter the relevant tutorials by the categories.

I have the following components - Question - I am not sure if the “Choice” component is correct. When i tried to select a category on screen, nothing changes (i.e. still showing the full list of tutorials)

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/4/9/49f70fefd0059ed0f1efd5824b8316090f09d99b.png)

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/d/0/d0a03869ab576e6bd5296f7430ad4f42730deaf2.png)

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [May 26, 2025, 3:37pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/2 "2025-05-26T15:37:09Z")

</div>

Have you tried the In App filter?

You’ll find it in the Options section of your Collection component.

---

<div class="post-metadata">

**Author:** ![Frameit](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/frameit/32/87465_2.png) [@Frameit](https://community.glideapps.com/u/Frameit)\
**Post date:** [May 26, 2025, 4:17pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/3 "2025-05-26T16:17:53Z")

</div>

is this right?

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/d/6/d67f1b13a75d7bd9876ea6c3389fc515cbe71ddb.png)

wouldnt it be a setting within choice component?

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [May 26, 2025, 5:07pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/4 "2025-05-26T17:07:27Z")

</div>

You only need choice components when you want to create custom filters. For a simple use case such as the one you described, the In App filter should be sufficient.

Does it do the job for you?

---

<div class="post-metadata">

**Author:** ![Frameit](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/frameit/32/87465_2.png) [@Frameit](https://community.glideapps.com/u/Frameit)\
**Post date:** [May 26, 2025, 5:21pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/5 "2025-05-26T17:21:29Z")

</div>

This is the format i’m trying to re-create, where in the tutorials tab, there will be categories in circle buttons, and when an user select a category, the tutorials associated with the category will be listed below. And when the user did not select any category, all tutorials will be listed

Will In-App filter work?

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/6/9/692685e874fe431e406b7bdd17992b718d9b86ff.png)

---

<div class="post-metadata">

**Author:** ![Frameit](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/frameit/32/87465_2.png) [@Frameit](https://community.glideapps.com/u/Frameit)\
**Post date:** [May 26, 2025, 5:22pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/6 "2025-05-26T17:22:32Z")

</div>

Btw, how does the In App Filter work?

---

<div class="post-metadata">

**Author:** ![Jeff\_Hager](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jeff_hager/32/43_2.png) [@Jeff\_Hager](https://community.glideapps.com/u/Jeff_Hager)\
**Post date:** [May 26, 2025, 5:41pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/7 "2025-05-26T17:41:43Z")

</div>

The in-app filter is a filter that is specifically built I to the collection.

A choice component is separate from a collection, but if you want to use it to filter your collection, then you need to hook a few things together. The choice needs to write to a column in a table. That column can then be used with the regular collection filter to filter the data. You could also use it to create a relation or query that you could then use as the source of your collection.

---

<div class="post-metadata">

**Author:** ![Frameit](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/frameit/32/87465_2.png) [@Frameit](https://community.glideapps.com/u/Frameit)\
**Post date:** [May 26, 2025, 7:27pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/8 "2025-05-26T19:27:00Z")

</div>

sorry, im lost ☹ If i want to re-create the below , what do i need to do?

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/c/3/c3f61aec3637f392a3102a2ea3d65d35e416f74b.png)

---

<div class="post-metadata">

**Author:** ![Jeff\_Hager](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jeff_hager/32/43_2.png) [@Jeff\_Hager](https://community.glideapps.com/u/Jeff_Hager)\
**Post date:** [May 26, 2025, 7:51pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/9 "2025-05-26T19:51:18Z")

</div>

I would use a button block or choice component depending on the look you want. Choice will be a lot easier since you can easily do multi-select without some complicated back end logic. That will write a value to a table. From there you need to determine if you will use that written value for a relation/query to use as the source of your collection…or use the value for the collection filter.

Basically you will not be using the ‘in-app’ filter if you have that particular look on mind. You will have to build your own filter logic.

---

<div class="post-metadata">

**Author:** ![Frameit](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/frameit/32/87465_2.png) [@Frameit](https://community.glideapps.com/u/Frameit)\
**Post date:** [May 26, 2025, 8:49pm UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/10 "2025-05-26T20:49:30Z")

</div>

can you help me troubleshoot please? Im still struggling with this  
is this right?

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/b/1/b11bd97080338a54fff23f5a62edd8b36f6bc4e7.png)

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/c/e/ce60ef8087a970fa431872429f9b649421dcf534.png)

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/2/a/2a840cda105327dcddcc293c97e60be0bf4ebc44.png)

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [May 27, 2025, 12:51am UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/11 "2025-05-27T00:51:40Z")

</div>

“Includes” is a dangerous way of doing it unless you are sure a “false positive” can never happen (i.e: a category named “Blue” is returned whilst your selected category contains another category like “Bluespace”).

You can just have two lists showing, one showing when “Selected Category” is empty and you show everything there. In the other, split the selected category into an array using split text, then create a multiple relation using that array, use that for your list.

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [May 27, 2025, 1:25am UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/12 "2025-05-27T01:25:04Z")

</div>

I can see two issues with your screen shots.

- Selected Categories is only applied to the first row in the table, so using that column in a filter will only impact that row. You need to apply that to all rows using a Single Value column.
- Your filter is back to front. It should be either “Selected Category includes Category” or “Category is included in Selected Category”

That said, I agree with @ThinhDinh - this is a fragile approach to filtering. Use either arrays with `contains`/`does not contain`, or relations/queries.

---

<div class="post-metadata">

**Author:** ![Frameit](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/frameit/32/87465_2.png) [@Frameit](https://community.glideapps.com/u/Frameit)\
**Post date:** [May 27, 2025, 9:57am UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/13 "2025-05-27T09:57:01Z")

</div>

I still don’t quite how to resolve this - Is there a tutorial on this?

Can you elaborate in more details on how to solve this ? " \* Selected Categories is only applied to the first row in the table, so using that column in a filter will only impact that row. You need to apply that to all rows using a Single Value column."

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [May 27, 2025, 10:14am UTC](https://community.glideapps.com/t/filter-tutorials-by-category/82063/14 "2025-05-27T10:14:47Z")

</div>

Add a Single Value column to your Tutorials table, and select First-\>Selected Category from the same table. You should then see the values from that column in every row. Then refer to that Single Value column in your Collection filter.
