من یه دو تا جدل دارم یکی page و یکی دیکه هم menu
داخل مدل menu متد رو به صورت زیر تعریف کردم:
public function page(){
return $this->belongsTo('App\Page');
}
داخل مدل page متد رو به صورت زیر تعریف کردم:
public function menu(){
return $this->hasOne('App\Menu');
}
اینم داخل view:
<td>{{$menu->page->title}}</td>
اینم خطای که میده:
Trying to get property of non-object
مشگل کجاست
به نظر من یه dd از menu بگیر ببینم چیه
@sj10ss بی زحمت شما از migration یا جدول دیتابیستون یه عکس بفرستید تا بهتر راهنماییتون کنیم. اینطوری مشخص نیست . احتمالا باید به صورت دستی foreign key رو مشخص کنید
شاید پاسخ شما همینجا باشد
@code2code
dd میزنم خروجی میده نام page رو برمیگردونه
@mohsenbostan
این منو:
$table->string('name');
$table->string('url')->default('#');
$table->tinyInteger('status')->default(0);
$table->string('targets')->default('all');
$table->string('icon');
$table->integer('parent_id')->unsigned()->nullable();
$table->foreign('parent_id')->references('id')->on('menus')->onDelete('cascade');
$table->integer('user_id')->unsigned()->nullable();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->integer('page_id')->unsigned()->nullable();
$table->foreign('page_id')->references('id')->on('pages')->onDelete('cascade');
این page:
$table->increments('id');
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users');
$table->integer('category_id')->unsigned();
$table->foreign('category_id')->references('id')->on('categories');
$table->string('title');
$table->string('slug')->nullable();
$table->text('summary')->nullable();
$table->longText('content')->nullable();
$table->string('keywords')->nullable();
$table->integer('visits')->unsigned()->default(0);
$table->tinyInteger('status')->default(0);
$table->string('targets')->default('all');
$table->dateTime('published_at')->nullable();
$table->timestamps();
$table->softDeletes();@sj10ss
$table->engine = "InnoDB";
اینو به migration تون اضافه کنید ببینید درست میشه ...
@a.hassanshahi74
اتفاقا Innodb هست
@mohsenbostan
هیج فرقی نکرد
نگاه اینجوری نمیشه
به نظرم اگه میخوای واقعا مشکلاتت سریع حل شه بهترین راه اینه که خودت اول حسابی دیباگ کنی
راههای زیادی داره مثلا ابتدایی ترین اینه که ببینم واقعا چه نوع متغییری داری به ویو میفرستی
قبلش dump بگیر شاید داری یه آرایه صدا میزنی ....
@alirezasafdari
جواب نداد
همون خطا رو داد
@code2code
بله میدونم
این راه ها رو قبلش رفتم اما مشکلی حل نشد
@sj10ss
خوب اون قسمت کدتو آپلود کن جایی خیلی راحتتر میشه کمکت کرد
چون اینجور مشکلا کلیه...
و مثلا ما یه کاریو همین طور که تو کردی انجام میدیم و بدون مشکله
ولی کد خودتو که ببینیم میفهمیم بله فلان جا رو اشتباه کردی ...
شاید بقیه بهتر بتونن دیباگ کنن
namespace رو تو کدات اشتباه نوشتی!!!!
@code2code
کدوم ثسمت