How did you create the initial Items record and index it by uid? This information is missing from the video and it would be extremely helpful to know. Thanks.
Great video. I believe it is exactly what I was looking for. Sadly for me, I am still struggling with moving from relational databases to NoSQL. I will get back to this when my understanding of the concepts is better. Anyway, thank you for the video.
@@akshy471 Hardly, but I started using NoSQL databases and fell in love with them. There are certain things I still prefer doing with RDBMS, but NoSQL databases are so flexible and easy to work with (after you shift your understanding) that I favour them to most activities nowadays.
i am still looking through your videos/site so i am not sure if you have anything like this already. however, it would be cool to see a tutorial where you show us how to implement a feature where users could add their own files to the application and store data inside of them. along with a tutorial around having multiple themes and color schemes in an application. a settings page where users could select between 3-4 different themes and have their preferences saved with firebase
Wes Doyle has got bg music covered. Only a few seconds, of beautiful relaxing music, and then it fades out. Currently his is using music by a band named Foglake.
I am new to this, but for the third option, wouldn't the list of items be so large for the whole app that it would make retrieving data harder? I am trying to figure out how to structure data for a CRM app where multiple users have access to each matter, but then the list of matters would get so big that it would take forever to load? or maybe I am wrong. I was thinking of storing under matters/UID/item, but then other users would not be able to access the matter data
This solved my problem with how to call data of a user. I still have one problem, does anyone have any advice on how to allow users to create/login as a specific user, such as client and physician, for example. Would this be in the db as well?
Nice video, thank you very much. It would be really great, if you can also make a video about ACL or sth similar, and the relationship between the users and their roles in NoSQL/Firebase. just a suggestion :-)
Good suggestion, I hadn't thought of that, but it would make a good video. A solution for ACL would probably look somewhat similar to the 3rd method in this video. Create a collection of users -| userId -| { itemFoo: true }, or the inverse based on items, items -| itemId -| { userBar: true }
I left it out because it there are many ways to do it. In this scenario, backend rules can be similar to method 2 based on the user that created the item. Alternatively, you could assign certain certain members at moderator attribute. You might find this lesson helpful angularfirebase.com/lessons/understanding-firebase-database-rules-by-example/
HI Fireship in my mobile app based on ionic 5 and angular 9, I can create booking on places. When I fill the form which is validated i have 200 respond from the server. After that, I go to menu click booking and I have error message { "error" : "Index not defined, add \".indexOn\": \"userId\", for path \"/bookings\", to the rules" } can You let me know what is the correct snippet for adding rules into the realtime database?
This statement is not true - "When you want to iterate over a user name, you have to load all the nested data further down the tree". I am not sure if it's just outdated, but it is simply not correct and is the crux of your whole argument for shallow data. Only "documents" are loaded in a query (not sub documents or sub collections)...This is why sub collections are a better alternative in many cases and there's no performance hit querying for user names on user documents while maintaining a more natural data model heirarchy.
I'm getting so confused trying to get these concepts working with angularfire2 v 5 and firestore, ${this.userId} seems to not be interpolating the uid string in my app. ngOnInit() { this.itemsCol = this.afs.collection(`users/${this.userId}/dietLogger`); this.items = this.itemsCol.valueChanges(); }
Video naming convention is confusing, very difficult to understand the sequence of videos I should watch. Please have some numbering system to make it more comprehensive.
how do i access the propeties of the users stored in the data base , meaning how do i delete them , in your case how do i delete the active and the title propeties ??
The third method has many possible rules depending on how the app is setup. Check out this video ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-qLrDWBKTUZo.html
good job thnx ... i want to know how to retrieve those data stored in the userId in firebase i used the first method and i need to retrieve all users data in one table plz
+kudikyala Join the Angular Firebase Developers Slack team so we can chat in more detail. Here's your invite: join.slack.com/t/angularfirebase/shared_invite/MjA2NTgxMTI0MTk2LTE0OTg4NTQ4MDAtMjhhZDIzMjc0Mg
Normally, you don't need to join. The query should be optimized to load all the data you need for a given view. However, you can combine observables with the RxJS methods here: www.learnrxjs.io/operators/combination/
great videos but the brevity is just crazy, any beginner will not be able to follow you. Maybe consider not undo-ing lots of code but typing yourself and explaining more