سلام
من دو تا 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();
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟