سلام وقت تون بخیر من این کدرو نوشتم
$role->permissions()->sync($request->input('permission_id'));
ولی این ارور رو میده
Call to a member function sync() on null
از اهمون خطی که بالا نوشتم ارور میگیره
```
<div class="form-group">
<label>دسترسی ها</label>
<select multiple class="form-control" name="permission_id[]">
@foreach ($permissions as $row)
<option value="{{ $row->id } }">{{ $row->title } }</option>
@endforeach
</select>
</div>
@nesyourys
کد های قبل از این خط :
$role->permissions()->sync($request->input('permission_id'));
طبیعتا یا متغیر $role مشکل داره یا نوع تعریف رابطه permissions.
شما داخل کنترلرتون قبل از خط بالا با dd تست بگیرید متوجه منظور بنده میشید.
dd($role->permissions()); // add this & check the value
$role->permissions()->sync($request->input('permission_id'));@nesyourys
سلام.
همونطور که از ارور مشخصه دارید تابع sync رو روی مقدار null صدا میزنید. در واقع تکه کد زیر داره مقدار Null برمیگردونه.
$role->permissions();
باید دیباگ کنید قطعه قطعه ببینید چرا مقدار نال بهتون برگشت داده میشه. یا اینکه اگر حل نشد کد های قبل از سینک رو هم از کنترلرتون قرار بدید تا بیشتر راهنمایی بگیرید.
باید کد های کدوم بخش رو دیباگ کنم؟@SobhanDadkhah
شاید پاسخ شما همینجا باشد
چشم ممنونم از کمکتون@SobhanDadkhah
مشکل حل شد مشکلم این بود ک
public function roles()
{
return $this->belongsToMany(Role::class);
}
return رو ننوشته بودم
مرسی از لطفتون @SobhanDadkhah
@nesyourys
خواهش میکنم. مشکلیه که زیاد پیش میاد واسه همه 😅
موفق باشید