Hi, I am fairly new to Glide and I am working on an app for a school where instructors (the users) can log in and manage their pupils.
The issue I am facing is how to manage a checklist of the syllabus for the pupils, where certain items are ticked off at the end of each lesson. Each lesson should display the remaining syllabus items in a checklist. The items that are complete could either be hidden, disabled, or already ticked off.
I have tried linking the pupil’s email to the syllabus items that are completed and then filtering the items based on the pupil’s email but it is not working. All items are hidden.
I can’t work out if I am missing something or perhaps there is a bug in the filtering.
I’m not sure to understand your use case.
Do you want pupils to check themselves the lesson as done ?
In this case, you can:
create a new “user-specific” column with a type Boolean for the table with the lessons in Glide Data Editor, let’s name it “Lesson completed”
use a checkbox input component on each lesson’s screen to mark it as finished or not (you can set the visibility to “user profile > email” is signed-in user to show this checkbox only to signed-in users)
filter the list of lessons to display creating 2 lists, for example 1 for lessons to complete and 1 for lessons already completed based on the column with the Boolean (“Lesson completed” is checked / isn’t checked)
Hey Guillaume, thanks for the swift reply and assistance!
Apologies for not being clearer. No, the instructor completes the form on behalf of the pupil. The pupil’s are not users themselves, hence why the “user-specific” column would not work.
I have however managed to narrow the issue somewhat. It appears the reason it was not filtering correcting was that I was using a Column Value instead of a Screen Value. As soon as I add an editable field that has the pupil’s email it filters correctly.
The issue with this solution is that I don’t want the email to be edited hence using a Column Value. I guess I could hide this item perhaps using CSS but would prefer a better solution.
You don’t need to use CSS. I think you should be able to hide the component using the built in visibility function. Just give it a condition that will never be true, and it will stay hidden.