مشکل در پیاده‌سازی روابط ACL

2 روز پیش
توسط حسن حکمتی آپدیت شد
حسن حکمتی ( 9790 تجربه )
2 روز پیش
تخصص : برنامه نویس وب، منتور، کوچ

سلام دوستان
در قسمت 59 یعنی پیاده‌سازی روابط ACL برای insert کردن در تیبل permission_user کادر Value به صورت select نمایش داده میشه اما برای من به صورت input نمایش داده میشه!
من دقیقا فایل مایگریشن همین قسمت رو بارگذاری کردم و تست کردم باز هم نتیجه تغییر نکرد.
در واقع در قسمت Designer دیتابیس هیچ گونه رابطه ای هم ایجاد نمیشه!
مشکل از کجاست؟
تشکر
توضیح تصویر رو وارد کنید

وحید ( 2680 تجربه )
2 روز پیش
تخصص : CTO, DevOps CI/CD Specialist، Fullstack Web Developer

@hekmati
اگر قسمت forein key جدولتون خالیه پس قطعا سلکتی هم مشاهده نخواهید کرد
مایگریت ساکسسفول شد یا اررور گرفتید ؟ کد فایل مایگریشنتون رو بفرستید

حسن حکمتی ( 9790 تجربه )
2 روز پیش
تخصص : برنامه نویس وب، منتور، کوچ

ببینید دقیقا فایل مایگرت ارایه شده رو اجرا کردم ، بدون خطا ایجاد شد.
@forughi.vahid

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreatePermissionsAndRolesTables extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('permissions', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->string('label')->nullable();
            $table->timestamps();
        });

        Schema::create('permission_user' , function(Blueprint $table) {
            $table->unsignedBigInteger('permission_id');
            $table->foreign('permission_id')->references('id')->on('permissions')->onDelete('cascade');
            $table->unsignedBigInteger('user_id');
            $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
            $table->primary(['permission_id' , 'user_id']);
        });

        Schema::create('roles', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->string('label')->nullable();
            $table->timestamps();
        });

        Schema::create('permission_role' , function(Blueprint $table) {
            $table->unsignedBigInteger('permission_id');
            $table->foreign('permission_id')->references('id')->on('permissions')->onDelete('cascade');
            $table->unsignedBigInteger('role_id');
            $table->foreign('role_id')->references('id')->on('roles')->onDelete('cascade');
            $table->primary(['permission_id' , 'role_id']);
        });

        Schema::create('role_user' , function(Blueprint $table) {
            $table->unsignedBigInteger('user_id');
            $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
            $table->unsignedBigInteger('role_id');
            $table->foreign('role_id')->references('id')->on('roles')->onDelete('cascade');
            $table->primary(['user_id' , 'role_id']);
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('permission_user');
        Schema::dropIfExists('role_user');
        Schema::dropIfExists('permission_role');
        Schema::dropIfExists('roles');
        Schema::dropIfExists('permissions');
    }
}
حسن حکمتی ( 9790 تجربه )
2 روز پیش
تخصص : برنامه نویس وب، منتور، کوچ

دوستان حل شد
اگر کسی به این مشکل برخورد راهش اینه که Engine دیتابیس رو از نوع InnoDB انتخاب کنه.
مشکل من اینجور حل شد و البته در قسمت Designer هم روابط ایجاد شدند.

برای ارسال پاسخ باید وارد سایت شوید