3

This question is similar to this question

I haven't changed the default autoIncrement from the table migration, however I noticed i couldn't get a model from the ID for a specific row. For the other rows it works fine. I cleared cache thinking it was a cache issue, but seems it is not.

Behaviour

I got records 1,..., 58, 59, 60

When i select a model

$object = Post::find(59);
// $object returns null but record exists

However i added another record via the app to check if the behaviour is the same, and the record from 60 is not null and it is the expected behaviour. Has anyone encountered this? If so what would be the best approach to overcome this.

I am using XAMPP v8.0.8 on Windows

Edit: Post Model

class Post extends Model
{
    use HasFactory,Searchable,SoftDeletes;

    protected $fillable = [
        'hash_id','user_id','location','subjects','request_type'
    ]; 

    protected $casts = [
        'location' => 'array',
        'subjects' => 'array'        
    ];
    
    public function User()
    {
        return $this->belongsTo('App\Models\User');
    }

    public function searchableAs()
    {
        return 'posts';
    }    
   
}

Migration file

public function up()
    {
        Schema::create('posts', function (Blueprint $table) {
            $table->id();
            $table->string('hash_id')->unique();
            $table->integer('user_id');
            $table->json('location');            
            $table->json('subjects');
            $table->string('request_type');
            $table->timestamps();
            $table->softDeletes();
        });
    }
Tithira
  • 634
  • 9
  • 22

1 Answers1

2

Assuming from soft deletes this happens if the record is deleted. Try looking in the deleted_at field on database.

atikur rahman
  • 503
  • 4
  • 15
  • 1
    Oh my.. I had deleted the record but have missed to check the `deleted_at`. Thank you for the catch. – Tithira Sep 13 '21 at 05:47