Создать функцию конструкции для Eloquent Model Laravel - PullRequest
0 голосов
/ 11 февраля 2020

У меня есть этот код

use Jenssegers\Mongodb\Eloquent\Model as Eloquent;
use Stevebauman\Location\Drivers\Driver;
use Stevebauman\Location\Exceptions\DriverDoesNotExistException;

Class CRUD extends Eloquent {
protected $collection;
   public function __construct($collection ,array $attributes = array())
   {

  parent::__construct($attributes);

       $this->collection = $collection;

   }

}

, когда я использую этот код для вызова конструктора, я ничего не получаю $ device_mode = new CRUD ('HW101950054393'); потому что, как я заметил, когда я пытаюсь отобразить переменную $ collection внутри конструктора, я получаю эту ошибку

преобразование массива в строку

Я не понимаю этого, поскольку я Я передаю переменную как строку, но модель работает с ней как массив. почему это происходит, и как я могу решить это

1 Ответ

0 голосов
/ 11 февраля 2020

Ваш код должен работать. Дважды проверьте, если ваш код идентичен тому, что вы опубликовали

Я использую Laravel 5.6, и это работает без проблем:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Test extends Model
{
    protected $collection;

    public function __construct($collection, array $attributes = array())
    {
        parent::__construct($attributes);

        $this->collection = $collection;
    }
}

Вызов

Route::get('/test', function () {
    $test = new \App\Test('1234');
}

работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...