Я пытаюсь писать хороший код, и частью этого является подсказка типов, чтобы облегчить работу в дальнейшем и заставить ожидания.
Это может показаться немного надуманным, но для меня это скорее доказательство концепции.
Я пишу класс, чтобы разделить файл TSV на вкладки и вставить в мою модель. В моем конструкторе я просил:
Illuminate\Database\Eloquent\Model
На что я перешел:
new \App\Model()
И, наконец, ответ об ошибке:
instance of App\Model given
Ясно, что я сделал что-то не так, но я не хочу навязывать использование App\Model, как я могу вообще запросить красноречивую модель?
Изменить для получения дополнительной информации:
Чтобы было понятнее, я использую Laravel 5, модели создаются с помощью artisan make:model. Конструктор выглядит следующим образом:
function __construct ($resource, Illuminate\Database\Eloquent\Model $model, $skip = 0)
И модель, которую я использую (для моего стола фильмов):
use Illuminate\Database\Eloquent\Model;
class Movie extends Model {
\App\Movie()
, и он говорит, что вы дали ему экземплярApp\Model
. Это была опечатка? - person user1669496   schedule 23.05.2015App\Model
расширяетIlluminate\Database\Eloquent\Model
? В противном случае исключение имеет смысл. - person Bogdan   schedule 23.05.2015Illuminate\Database\Eloquent\Model
или другой класс, который его расширяет, иначе они не являются моделями Eloquent. Пожалуйста, отредактируйте вопрос и опубликуйте определение конструктора, где вы вводите намек на параметр. - person Bogdan   schedule 23.05.2015