Please check your agent type and version and read on or switch to the right documentation.
Smart hasMany relationship in mongoDB
Context: As a user I want to display records that have a belongsTo relationship to another record as related data of this record.
Parent collection: user
Child collection: visualization
Models definition
models/user.js
// This model was generated by Lumber. However, you remain in control of your models.
// Learn how here: <https://docs.forestadmin.com/documentation/v/v6/reference-guide/models/enrich-your-models>
const mongoose = require('mongoose');
// This section contains the properties of your model, mapped to your collection's properties.
// Learn more here: <https://docs.forestadmin.com/documentation/v/v6/reference-guide/models/enrich-your-models#declaring-a-new-field-in-a-model>
const schema = mongoose.Schema(
{
avatar_link: String,
client: { type: mongoose.Schema.Types.ObjectId, ref: 'client' },
date_added: Date,
email: String,
first_name: String,
last_name: String,
user_type: String,
},
{
timestamps: false,
}
);
module.exports = mongoose.model('user', schema, 'user');
models/visualization.js
// This model was generated by Lumber. However, you remain in control of your models.
// Learn how here: <https://docs.forestadmin.com/documentation/v/v6/reference-guide/models/enrich-your-models>
const mongoose = require('mongoose');
// This section contains the properties of your model, mapped to your collection's properties.
// Learn more here: <https://docs.forestadmin.com/documentation/v/v6/reference-guide/models/enrich-your-models#declaring-a-new-field-in-a-model>
const schema = mongoose.Schema(
{
description: String,
name: String,
user: { type: mongoose.Schema.Types.ObjectId, ref: 'user' },
visualization_type: String,
},
{
timestamps: false,
}
);
module.exports = mongoose.model('visualization', schema, 'visualization');
Declaration of the relationship
As the relationship that is not present in your database structure, declare it at the level of the forest folder.