1
Good afternoon sorry if I missed any similar question, I searched extensively both here and in English and found nothing like it,
I have the following Model in the database
contract
   id
   due_date
contract_service
   id
   price
   contract_id
   type_id
service
   id 
   name
   desc
   base_price
The models are Contract, Contractservice, Service, follow the respective relationships:
class Contract extends Model
{
    public function service() {
        return $this->hasMany('App\ContractService');
    }
}
class ContractService extends Model
{    
    public function type() {
        return $this->belongsTo('App\Service', 'type_id');
    }
}
class Service extends Model
{    
}
In Dallas I search for the name of the contract services this way (by being hasMany)
$contract->service[0]->type->name
Is there any way we’ve narrowed down that extended relationship and do something like this below?
$contract->service[0]->name
The service table is where I keep the type of Services to be provided, it would be something like conctract_service_description (which Opencart uses using inner_join if I’m not mistaken).
What are relationships? Describe in questions...
– novic
That’s right, Cassiano. If you’re going to join, you don’t need relationships in Model.
– Diego Souza
If you make a
joinin the search will be as you are requesting.– Kenny Rafael
I put the models
– Cassiano
I don’t think you need one
JOINno. You can usehasManyThrought.– Wallace Maxters
The hasManyThrough does not work for this case, should be something like hasManyThroughBelongsTo. I found a discussion that solved this problem, follow the link: http://laravel.io/forum/03-04-2014-hasmanythrough-with-many-to-many Vlw personal!
– Cassiano