How to have user follow each other

For my social media app, I obviously want users to be able to follow each other. How would I do this? I know it seems simple, but I am really stuck. I can share screenshots of what I have so far if you want.

1 Like

Hi @nickkessel22.

Create two new fields in User db.

  1. Field name: Following - Field type: User (mark this field is a list).
  2. Field name: Followers - Field type: User (mark this field is a list).

When user wants to follow someone on the “follow” button workflow, just make changes to the “followed (the user you want to follow)” → Followers → Add current user to the list

+

Make changes to current user → Following → Step 1 … user

Let me know if this makes sense to you or you have any questions,
Redu.

3 Likes

Hey thanks Redu! I cannot access my laptop right now, but when I can, I will try this. I think this may be similar to what I have, not sure.

-Nick

1 Like

OK @yusaney1 . I am still confused. I have type “User” and one of the fields is “Following” type “List of Users” I think this is right. Then, when the current user clicks the follow button next to another user’s post (user1 clicks follow on user2’s post) how do I add the Current User to the Post’s Creator’s list of followers? I do not know how to add a user to a list of users.

Make changes to a thing called “User” data type in your case and “add” the user in the “following” data thing…

Hey @nickkessel22. Check out this demo I made for you.

Demo: https://followersapp.bubbleapps.io/version-test
Editor: https://bubble.io/page?name=index&id=followersapp&tab=tabs-1

Let me know if you have any more questions.

1 Like

From a performance stand point of view you might want to create a separate data type for the following list. If the list sits inside the user table then it will be loaded every time you pull a user record.

This will really only impact if your “following users” list would have hundreds or thousands of followers.

3 Likes

Yeah, obviously is better to have separated data type linked to the user to access it from Current user, but in this example just trying to explain how the workflow works.

Wow! Thanks, this is helping me get on the right track, but I do not seem to have “Current cell’s User”, it is just “Current Cell’s Post Creator” and that does not work. Here is the link to my editor if you want to poke around. https://bubble.io/page?type=page&name=home&id=omega-app&tab=tabs-1

Nevermind guys! I got it working now, thanks for all your help!

Hey, the following function is great. Thanks for sharing.
I have a similar type of question like I want to make something like… send connection requests, accept/decline authority just like LinkedIn or facebook. Could you please guide me.
I checked “how to make linkedin clone and facebook clone” but its just connections without accept and decline authority. Can you help me?

I think you are referring to enabling a user to fast-signup to an app using Facebook login. Where the user then authorizes FB to provide your email (and other metada) to the app.

If so you need to use the action and the corresponding plugin:

image

You can watch this nice tutorial by Evan Little @evanlitttle as well > How To Add Facebook Login To Your Website - Bubble.io Tutorial

Its working. The issue is, I am hiding the follow button after clicked… but whenever I refresh, the follow button shows up even though the elements are not visible on page load. Can you help me fix this?

would you elaborate on this please ? How do I create a separate data type if I want to tie it to the current user… thx

hey @yusaney1 Im facing a strange issue. I have (almost) replicated your solution and it worked nicely. I just a have a problem with displaying the followers count on the user profile page.
When I hit the following button the followers count goes from zero to one but than imidiatly drops back to zero.
So when Im on a profile page of a user that I follow his followers number is 0 which is not correct because Im following him.
Screenshot 2022-11-18 at 21.55.47

Im probably just missing something here right ?

Okay @yusaney1 edit. I just found out what was the issue. Privacy settings on the user. :slight_smile: Solved this one. Sorry ignore me :slight_smile:

1 Like