## One to many Relationship on Flutter
Using Parse, you can store data objects establishing relations between them. To model this behavior, any
ParseObject can be used as a value in other
ParseObject. Internally, the Parse framework will store the referred-to object in just one place, to maintain consistency. That can give you extra power when building and running complex queries. There are three main relation types:
one-to-one, establishing direct relations between two objects and only them;
one-to-many, where one object can be related to many other objects;
many-to-many, which can create many complex relations between many objects.
In this guide we will detail how the
one-to-many relation works using a pratical app example. There are two ways to create a
one-to-many relation in Parse:
- The first is using the
Child Class, which is the fastest in creation and query time.
- The second is using
Pointersin Parent Class which can lead to slow query times depending on their size. Because of this performance issue, we will use only pointers examples.
You will implement a Flutter book registration App and will create and query related objects using the Parse
one-to-oneis not common and we are not going to cover on our guides. As an example a relationship between the User class and another class that will contain sensitive user data for security reasons ( 1.4. Don’t let users have access to sensitive data from others ).
<iframe width=”560″ height=”315″ src=”https://www.youtube.com/embed/b6fdFD0hlJo” title=”YouTube video player” frameborder=”0″ allow=”accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture” allowfullscreen=””></iframe>
To complete this tutorial, you will need:
- Android Studio or VS Code installed (with Plugins Dart and Flutter)
- An app created on Back4App.
- Note: Follow the New Parse App Tutorial to learn how to create a Parse App on Back4App.
- An Flutter app connected to Back4app.
- Note: Follow the Install Parse SDK on Flutter project to create an Flutter Project connected to Back4App.
- A device (or virtual device) running Android or iOS.
Understanding the Book App
The main object class you’ll be using is the
Book class, storing each book entry in the registration. Also, these are the other three object classes:
Publisher: book publisher name, one-to-many relation with
Genre: book genre, one-to-many relation with
Book. Note that for this example we will consider that a book can only have one genre;
Author: book author, many-to-many relation with
Book, since a book can have more than one author and an author can have more than one book as well;
A visual representation of these data modeltutorials,
samples, guidance on mobile development, and a full API reference.