Laravel Eloquent: Nested Relationship to save data

213 views Asked by At

I want to save data on Token which has mid and tid

mid references to Merchant id

tid references to Terminal id

class Merchant {
   public function terminal() {
        return $this->hasMany('App\Models\Terminal', 'tid');
    }

    public function token()
    {
        return $this->hasMany('App\Models\Token', 'mid');
    }
}

class Terminal {
       public function merchant() {
        return $this->belongsTo(Merchant::class);
    }

    public function token()
    {
        return $this->hasMany('App\Models\Token', 'tid');
    }
}

class Token {
    public function terminal()
    {
        return $this->belongsTo(Terminal::class);
    }

    public function merchant()
    {
        return $this->belongsTo(Merchant::class);
    }
}

Merchant hasMany(Terminal) Terminal hasMany(Token)

Merchant 
id
mid

Terminal
id
tid

Token
id
mid
tid
token

$merchant_info->terminal->token->save(new Token($data));

Throws an error: Method token does not exist.

0

There are 0 answers