Inline List > Set columns > Values from "Screen"

Is this in the works yet? Desperately need for a recipe app that allows users to click an ingredient to add or remove it from a recipe.

1 Like

You can build an app like this right now anyways. You use either toggle or checkboxes to add remove ingredients and a “if then else” to identify ingredients for a group. Make the numerical value a text entry value for weights and volumes and a template column for the finished ingredient list.

The way you’re explaining does not scale. It requires a column for each ingredient to be set to T/F per recipe.

My app has 1000’s of recipes and 10,000’s of ingredients.

The method I’m asking for would add a recipe ID and ingredient ID to the same row with a single click allowing for each recipe to have an inline list of ingredients.

2 Likes

so these are clearly just recipes your copying and pasting into the app. Not your own?

Because of this you just need a script to take new recipes divide them up and identify if they already have their own columns and if so just add quantity otherwise add new column with quantity as well. Scalable. quite easy :slight_smile:

I will make this for you if you have images for your recipes. No cost to you, but I want images.

These are recipes created by my users using ingredient ms they add.

Each user only has access to the ingredients they have added.

I am using glide sheets.

Well I wish you luck with that. Using Glide Sheets in this scenario hinders your ability to provide the finished product you want to produce. I’ve had quite a few projects (dozens) that started off in just Glide sheets and end up being migrated over to google sheets due to a lack of formula complexity and/or the inability to sort and customize data automatically.

1 Like

Can you provide some screenshots of what you have now, or describe in more detail how you want your app to flow? Are you essentially trying to add one ingredient at a time to a recipe for each action execution, or multiple ingredients at a time? What I’m currently picturing is an inline list of ingredients on the details screen of a recipe. When you click on each ingredient, it writes the recipe ID and chosen ingredient ID to a recipe/ingredient crosswalk table, correct? I think this could be achieved relatively easily if my assumptions are correct.

2 Likes

Exactly. The adding (via actions) of the ingredients would take place from the edit screen of the recipe and would show all ingredients that can be added.

The inline ingredients on the recipe details screen would link to the ingredient itself.

Create recipe > create ingredients > edit recipe > click to add ingredient from sorted inline list

What I like to do sometimes is use the user profile sheet to hold global values. I do this with any CSS that I want to use throughout the app, by loading it as a single value in the user profile sheet. Then access that user profile column in a rich text component anywhere it’s needed in the app. That way, if I ever need to make a change to the CSS, I change it in one spot, and it’s changed globally throughout the app. I also have another app that I’ve been working on, that’s largely driven soley from a single user profile sheet. Data is written to other sheets, but everything in the app interface is driven from the user profile sheet only. In that sheet I have several columns that hold temporary values. All of my forms are custom forms where a user will fill out the data in the entry components and the data is immediately saved to the columns in the user profile sheet. Then I have a submit button which will use a combo action to move those temporary values to a new sheet via the Add Row action, then clear out the values for next time with the Set Column Action. I also have reset buttons to clear the temporary values through the Set Column action if I want to start over.

The point of explaining all that, is that I’m thinking that you could create a single relation to link your recipes to your user profile. Then using the set column action you could write the recipe ID to a column in the user profile sheet. This would be part of a combo action on the recipe list where you will first set the column value in the user profile sheet followed by a View Details action. Then, when you are adding ingredients to a recipe, you should have access to the recipe ID through the user profile and can write both that recipe id as well as the ingredient ID to the sheet. Now in theory, this should work. I was testing some set column actions through a single relation and it was working in the editor, but for some reason, I had issues with it working on the published app. Now, that was in staging and that app I test with is a mess of several different things I’ve been testing, so it’s hard to say if I did something wrong, or if there is only an issue in staging, or some other bug. But hopefully, if you use the user profile sheet for temporary data storage, then you should be able to to get it to work.

4 Likes

Just an update on the set column issue myself and others have ran into.

Does this have anything to do with setting column from current screen?

Not in the sense that you are asking for. Only in the sense that the Set Column action through a single relation is broken at the moment. If that was working properly, then as I suggested above, you would be able to temporarily store the Recipe ID in the user profile, which would then be accessible to you when adding the ingredient row. I think the problem with your scenario is that your action is acting on an inline list, which is essentially disconnected from the parent item that is displaying the list and the action is only acting on the list items…not the parent item that’s displaying the list. I’m not saying that this isn’t an excellent feature request, but for now, I think the workaround I mentioned is probably the only way to get what you need.