How to create lists from new/existing posts by a user?

Hi,

My second question/request for the day, in continuation with the same theme.

Usecases:

  • Registered users can upload a pic to the app. - DONE ( it was a no brainer thing )
  • Registered users can upload a series of pics spanning across a day or many days and mark all the pics as a part of a series. - CONFUSED

I want to implement a second use case in one of the two ways here ( or maybe have an option for both )

a. While or Before posting the first pic they indicate that the next set of pics will be a part of a series and probably after the N-th pic they close the series which now has a title that can be shown as an inline list under his profile

b. The user continues to upload pics over a course of the day or days and at the end of it, he is given an option (separately) to create a list using a checkbox next to each image ( or in any other way) he has posted.


I initially thought will create a new category every time he wants to create a new list and display all items in that category. Creating a column called Category(list) is something straightforward. But not sure if this is anyway close to the right way.

What are your thoughts?

Thanks

It is like creating an album, I guess. And the user has the option to either add a picture to an album at the beginning of posting or later, or adding as a single photo and adding to an album later.

So, have a column called “Album”. While posting a pic, have a checkbox, Add to Album. Have another checkbox Add to Existing album or Creating a New Album. When the checkbox is selected for Add to Existing Album, have a Choice component, which will show all the values of existing names in the column “Album” for the signed in user. And, if user selects an album name from the existing list, then that will go into the category column for this photo.
If the user selects Create a new album, then show a text entry in order to enter a new name which will be stored in the Album column.

If this photo is posted as Individual photo, then have it go with a default name Individual in the category column.

While showing the list of album names, we can have a filter “Album” is not Individual so, that Individual is not showing up in the list of album names for existing albums.

There maybe another way to not select album every time a photo is added, if a list of photos is going to be in one album. Maybe, a way of selecting each image using checkbox and then finally add to album. Need to think about it.

1 Like

Hey Vijay,

Firstly thanks for taking time to share your thoughts/inputs on how to approach the solution.

I think the word album did strike a chord in my mind and i realised thats a good approach. But i have several questions on top of what you said.

firstly do you suggest i create this column in the posts sheet or in the profile sheet or in a totally different new sheet ? I am asking new sheet because over a time the user might have too many Albums(lists) which might be better hanlded in a diff sheet.

secondly what are you suggesting to be stored in this Album colum ? reference of the image ? ie RowID ?

Have another checkbox Add to Existing album or Creating a New Album. When the checkbox is selected for Add to Existing Album, have a Choice component, which will show all the values of existing names in the column “Album” for the signed in user.

this condition implementation is at the component level or in the data tab in glideapps ? I am assuming it to be component level - but wondering if such granular level is possible ? ( am new so this is an ignorant question )

At one stage you brought the word “Category” into picture not sure if you are pointing to the categroy what i already have in the sheet or something diff - i got a bit confused. I am using the Category column to define the type of image ( kind of tag ) am using a lookup from another sheet where i have defined the list which am calling using options component.

Thanks

Hi Vijay,

I tried to do few things based on my understanding and I was able to get through with it only to a certain extent. Heres what I did

Created a sheet which has 3 options
Individual Post
Create New List
Add to Existing List

Made this as a Choice component in the add new image form page with 1st one being default

When I select Create New List, am showing up a button which will inturn open up a form ( through an action ) and I just have a text entry field there which will basically create an entry in a new sheet where I capture user-email and the new-list-name. I took this option of using action to create form as it was not allowing me to insert form inside a form.

But after I come back to the image upload page, am not able to capture that newly created list name and when I submit its going in as a null value

When I choose Add to Existing List, I am showing up a dropdown option which is a list displayed from the sheet that I have created above in step2 – this step seems to be going through fine.


Here are my screengrabs

Image Upload Page

New List creation option chosen

New list creation form

Use existing list option chosen

User-List sheet

Finally how data is getting stored in all 3 conditions - ignore row 2 it was my mistake with image selection. But if you see this row and also the last row and inturn to last column - the new list name is not captured. Not sure how to pass it from that form into the image submission form.

Hi Shiv,
Here’s one strategy.
Have three form buttons. Before going to the form button, have the selection to be made, whether it is to create an album, or Add a Photo, or Add to Existing Album.
Let this selection be to a Flag which will capture the choice.

Based on the choice, show either of one form buttons, which will have names
Add Image,
Create an Album
Add to Existing Album.
This can be done using visibility condition.

For Add Image form, inside the form, just have Upload Photo.
For Create an Album, have a field to enter name of album and then Upload Photo.

For Add to Existing Album, inside the form, have a choice component to select the list of albums, and then Upload Photo.

So, this will avoid having to have the selection of individual photo, and Album within the form.

So, the columns will be Individual, New Album, Existing Album ( each can be boolean) and then Album Name, which will have a value in case New album or Existing Album is true.

One correction above, The flags for whether it is a new photo, album or existing album columns may have to be on a separate sheet than the sheet where you are collecting the images using the form. Because, a form creates a separate row, so the field for the flags may have to be on a separate home page, if you have one.

Hey Vijay,

I get the approach that you are suggesting there. I will give it a try now and see if am able to sail through it.

Last night I was thinking of couple of flows around it- so wanted to check your opinion on it.

a. Is there a way we fill up a form and one of the fields be stored in columns across 2 sheets? Either with a straightforward implementation or using some kind of action?

b. Alternatively, is it possible to filter and display UNIQUE values from a given column satisfying a particular condition in the sheet? eg If posts sheet has many users and many photos spread across few albums. Can we filter based on the user and then display the unique album names in a choice component?

Also I noticed one another issue with the implementation I did last evening. If I try to create a new List (album) and give the exact same name what is already in the sheet, it allows me to proceed and store/save it (basically duplicating the entries). How can I prevent it on a google sheet at the time of entry ( I know in traditional DB it doesn’t allow to write at all if we make it primary).

Thanks

Hey Vijay,

I spent some time during the day and I was able to get through with the implementation of albums during a new post.

Below is my conditional implementation.

Series == Lists == Album ( :slight_smile: )

Default is Individual post and if I select Series , it enabled existing or new option - here default is Existing with the subsequent dropdown enabled.

If I select New then a button is enabled which leads me to a new form for entering the series name ( through action ) and by the time I come back to this page it gets reflected in the “Select Series” dropdown.

Then on its a normal flow.

Thanks for your pointer on how to structure this.

1 Like