1use Illuminate\Database\Eloquent\Builder;
2
3// Retrieve posts with at least one comment containing words like foo%...
4$posts = App\Post::whereHas('comments', function (Builder $query) {
5 $query->where('content', 'like', 'foo%');
6})->get();
7
8// Retrieve posts with at least ten comments containing words like foo%...
9$posts = App\Post::whereHas('comments', function (Builder $query) {
10 $query->where('content', 'like', 'foo%');
11}, '>=', 10)->get();
1use Illuminate\Database\Eloquent\Builder;
2
3// Retrieve posts with at least one comment containing words like code%...
4$posts = Post::whereHas('comments', function (Builder $query) {
5 $query->where('content', 'like', 'code%');
6})->get();
7
8// Retrieve posts with at least ten comments containing words like code%...
9$posts = Post::whereHas('comments', function (Builder $query) {
10 $query->where('content', 'like', 'code%');
11}, '>=', 10)->get();
1// Detach a single role from the user...
2$user->roles()->detach($roleId);
3
4// Detach all roles from the user...
5$user->roles()->detach();
1When updating a belongsTo relationship, you may use the associate method. This
2method will set the foreign key on the child model:
3
4 $account = App\Account::find(10);
5 $user->account()->associate($account);
6 $user->save();
7
8When removing a belongsTo relationship, you may use the dissociate method. This
9method will set the relationship foreign key to null:
10
11 $user->account()->dissociate();
12 $user->save();
1<?php
2
3namespace App\Models;
4
5use Illuminate\Database\Eloquent\Model;
6
7class Phone extends Model
8{
9 /**
10 * Get the user that owns the phone.
11 */
12 public function user()
13 {
14 return $this->belongsTo('App\Models\User');
15 }
16}
1<?php
2
3namespace App\Models;
4
5use Illuminate\Database\Eloquent\Model;
6
7class Project extends Model
8{
9 /**
10 * Get all of the deployments for the project.
11 */
12 public function deployments()
13 {
14 return $this->hasManyThrough(Deployment::class, Environment::class);
15 }
16}