اذهب إلى المحتوى
  • 0

خطأ في جلب البيانات في استعلام Many To Many Relationship Laravel حيث يظهر Column not found

احمد مصطفى14

السؤال

يظهر لي هذا الخطا عند عمل علاقه many to many في لارافيل
imageproxy.php?img=&key=e4ac65570db3469d3.thumb.png.6c784570d98ea03d7fce8e529cb80558.png
وهذه الاكواد اللتى قمت بكتابتها في المشروع
 

create_projects_doctors.php

في ملف ال migrations

  public function up()
    {
        Schema::create('projects_doctors', function (Blueprint $table) {
            $table->id();
            $table->foreignId('doctors_id');
            $table->foreignId('projects_id');
            $table->timestamps();


            $table->foreign('doctors_id')
                ->references('id')
                ->on('doctors')
                ->onDelete('cascade');


            $table->foreign('projects_id')
                ->references('id')
                ->on('projects')
                ->onDelete('cascade');

            // $table->unique(['doctors_id', 'projects_id']);
        });
    }
//Models doctors//

    public function projects()
    {
        return $this->belongsToMany(project::class, 'projects_doctors');
    }
//Models Project//


 public function doctors()
    {
        return $this->belongsToMany(doctors::class, 'projects_doctors');
    }
//DoctorsController 

public function index()
    {
      
        $doctors = doctors::find(1);
        $doctors->projects;
        dd($doctors);
        return view('doctors.index', compact(['doctors']));
    }

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1
بتاريخ 9 دقائق مضت قال أحمد مصطفى كامل:

لقد اضفت بيانات في قاعدة البيانات بشكل طبيعى لكن في لارافيل عن عرضها لا اعرف المشكله اين يظهر لى خطا كما في الصورة السابقه

حاول تعديل علاقة الربط بين النماذج مع الجدول الوسيط

//Models doctors//

    public function projects()
    {
        return $this->belongsToMany(project::class, 'projects_doctors', 'projects_id', 'doctors_id');
    }
//Models Project//


 public function doctors()
    {
        return $this->belongsToMany(doctors::class, 'projects_doctors', 'doctors_id', 'projects_id');
    }

بهذه الطريقة نحدد أسماء الحقول يدوياُ لتجنب الخطأ السابق.

  • تعديل: إضافة اقتباس مفرد لأسماء الحول لتعامل كسلسلة نصية (خطأ كتابة)
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

حسب الخطأ، ربما يوجد اختلاف باسم العمود والسبب حالة الجمع أي حرف S 

projects_id 
       ^
project_id

أرجو تجريب عمل الحقول بدون S

        Schema::create('projects_doctors', function (Blueprint $table) {
            $table->id();
            $table->foreignId('doctor_id');
            $table->foreignId('project_id');
            $table->timestamps();


            $table->foreign('doctor_id')
                ->references('id')
                ->on('doctors')
                ->onDelete('cascade');


            $table->foreign('project_id')
                ->references('id')
                ->on('projects')
                ->onDelete('cascade');

            // $table->unique(['doctors_id', 'projects_id']);
        });

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 13 دقائق مضت قال Wael Aljamal:

حسب الخطأ، ربما يوجد اختلاف باسم العمود والسبب حالة الجمع أي حرف S 


projects_id 
       ^
project_id

أرجو تجريب عمل الحقول بدون S


        Schema::create('projects_doctors', function (Blueprint $table) {
            $table->id();
            $table->foreignId('doctor_id');
            $table->foreignId('project_id');
            $table->timestamps();


            $table->foreign('doctor_id')
                ->references('id')
                ->on('doctors')
                ->onDelete('cascade');


            $table->foreign('project_id')
                ->references('id')
                ->on('projects')
                ->onDelete('cascade');

            // $table->unique(['doctors_id', 'projects_id']);
        });

 

لا اعتقد ذلك
لقد اضفت بيانات في قاعدة البيانات بشكل طبيعى لكن في لارافيل عن عرضها لا اعرف المشكله اين يظهر لى خطا كما في الصورة السابقه
 

3.png

3.png

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...