Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

radhamadhavamhostel's avatar

UUID displayed as a random integer number in View page

Hi,

I am using Spatie laravel permission using UUID. I have extented spatie role model to support UUID. roles are inserting to databse ands uuid is generating fine.

My issue is when displaying Roles list in user creation page. insted of UUID some random inter is displayed as value.

Controller $roles = Role::all(); View

@foreach ($roles as $key => $role)
                          <option value="{{$role->id}}">{{$role->name}}</option>
                          @endforeach
                        </select>

when inspecting page

<select class="form-control" id="user_type" name="user_type" required="">
                          <option></option>
                                                     <option value="0">Admin</option>
                                                    <option value="0">Bank/NBFC/ARC</option>
                                                    <option value="84187">Co-Employees (Supervisor)</option>
                                                    <option value="0">Management</option>
                                                    <option value="9">Buyer</option>
                                                  </select>

Role Model

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Spatie\Permission\Models\Role as SpatieRole;
use App\Traits\Uuid;

class Role extends SpatieRole
{
    use Uuid;
    protected $primaryKey = 'id';
    public $incrementing = false;

    protected $casts = [
        'id' => 'string'
    ];
}
0 likes
1 reply

Please or to participate in this conversation.