Il tuo approccio alla chiave esterna è sbagliato, quando nel contesto di hasMany. Invece una singola colonna chiamata team_id dovrebbe essere sul ticket e quindi puoi fare quanto segue.
public function teams()
{
return $this->HasMany('App\Team', 'team_id');
}
Che funzionerebbe se il tuo biglietto fosse così.
{
"_id": ObjectId("5f32d9bb486e94459b6531c3"),
"subject": "\"URGENT\" Non-Compliance In (Eastern Region)",
"content": "abc",
"user_team": "5f044199e40dfe4847056785",
"team_id":"5f3012bbb7c2bc422e4da5a2"
"organization_id": "5f74359c7dcc8f6fbb2b47e2"
}
Invece sembra che tu stia effettivamente facendo molti a molti, perché una squadra può avere molti biglietti e invertire. Questo può essere definito così, probabilmente aggiungerà i dati a entrambi i modelli, ma non sono un esperto di Mongodb
in Laravel
.
public function teams()
{
return $this->belongsToMany(
Team::class, null, 'ticket_ids', 'team_ids'
);
}
Puoi trovare tutto questo nella documentazione .