سلام
من دو تا table دارم به نام های team که اعضای تیم رو در سایت نشون میده و social media که شبکه های اجتماعی این اعضارو نشون میده .
Schema::create('teams', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('title');
$table->text('about');
$table->string('image');
$table->timestamps();
});
Schema::create('social_media', function (Blueprint $table) {
$table->id();
$table->string('facebook_link');
$table->string('twitter_link');
$table->string('instagram_link');
$table->string('linkedin_link');
$table->unsignedBigInteger('team_id');
$table->foreign('team_id')->references('id')->on('teams')->onDelete('cascade');
$table->timestamps();
});
و بین این ها رابطه رو درست کردم . و عملیات crud رو روی team هم انجام دادم
class Team extends Model
{
use HasFactory;
protected $fillable = ['name' , 'title' , 'about' , 'image'];
public function socialmedia()
{
return $this->hasMany(SocialMedia::class);
}
}
class SocialMedia extends Model
{
use HasFactory;
protected $fillable = ['facebook_link' , 'twitter_link' , 'instagram_link' , 'linkedin_link'];
public function team()
{
return $this->belongsTo(Team::class);
}
}
حالا می خوام در یک صفحه ایجاد socialmedia در تگ select option اعضای تیم که قبلا شبکه اجتماعی ثبت نکردن رو نشون بدم .
کنتلر socialmedia متد create
public function create()
{
$mrn=DB::table('teams')->join('social_media' , 'teams.id' , '!=' , 'social_media.team_id' )->get();
return view('admin.pages.SocialMedia.create' , compact('mrn'));
}
و این هم ویو ایجاد socialmedia
<form action="{{ route('socialmedia.create' ) }}" method="post" >
@csrf
<div class="form-group">
<label for="" class="label">کاربر</label>
<select name="user " id="">
@foreach($mrn as $team)
<option value="{{ $team->id }}" >{{ $team->name }}</option>
@endforeach
<option value=""></option>
</select>
</div>
چنتا team هم ساختم ولی تو قسمت select هیچی نمیاره
مشکل از این قسمته نمیدونم join مشکل داره یا نه
$mrn=DB::table('teams')->join('social_media' , 'teams.id' , '!=' , 'social_media.team_id' )->get();
سلام نمیدونم سوالتون رو درست فهمیدم یا نه، ولی این رو امتحان کنین:
Team::whereDoesntHave('socialmedia')->get();
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟