Получение определенного свойства модели возвращает ошибку: Неопределенное свойство: IlluminateDatabaseEloquentBuilder::$id

#model #laravel-5.3

#Модель #laravel-5.3

Вопрос:

Я хочу проверить существование модели в моей таблице пользователей, а затем получить ее свойство id для вставки новой записи, но получаю ошибку неопределенного свойства. Я прочитал документацию и некоторые похожие вопросы, но они не сработали. Может кто-нибудь, пожалуйста, сказать мне, как с этим справиться?

Контроллер:

 $checkExist=Users::where('codeMeli', $codeMeli);

     if (!empty($checkExist))
     {
          $checkOwner=DB::table('user_admin')->whereRaw('userid='.$checkExist->id.' and adminid='.$CurrentUSerID)->get();
          if($checkOwner>0)
          {
               //alert user was added before
          }
          else
          {
               $result= DB::table('user_admin')->insert(['userid'=>$checkExist->id,'adminid'=>$CurrentUSerID]);
          }
      }
  

ошибка:

Неопределенное свойство: IlluminateDatabaseEloquentBuilder::$id

Ответ №1:

вы должны использовать first или get


$checkExist=Users::where('codeMeli', $codeMeli)->first();

Комментарии:

1. Что будет возвращено, если я использую его без методов коллекции?