Столкнувшись с проблемой при попытке вставить данные в базу данных, LARAVEL

Я получаю сообщение об ошибке «Класс« Приложение \ Модели \ Студент »не найден».

Пожалуйста, проверьте мои коды:

      <?php

          namespace App\Http\Controllers;

          use Illuminate\Http\Request;
           use App\Models\Student;
           class StudentController extends Controller
           {
              public function data(){


                   $stud = new Student;
                   $stud->name = 'Mona Lisa';
                   $stud->rollnumber = '001';
                   $stud->save();


             }

}

Можете ли вы показать код вашего класса Student?

Jerodev 10.12.2018 12:19

Ага ... <? Php namespace App \ Models; используйте Illuminate \ Database \ Eloquent \ Model; класс Student расширяет модель {protected $ connection = 'mysql'; защищенный $ primaryKey = 'id'; защищенная таблица $ = 'студенты'; защищенный $ fillable = array ('id', 'name', 'rollnumber',); public $ timestamps = false; }

Jnan Bikash Deka 10.12.2018 12:21

Где находится файл класса ученика?

Jerodev 10.12.2018 12:22

Студенческий класс - модель Student.php

Jnan Bikash Deka 10.12.2018 12:29

@JnanBikashDeka Вы поместили свой класс модели в новый каталог? По умолчанию у них нет собственного каталога. Они лежат в каталоге приложения со многими другими каталогами.

Rafay Hassan 10.12.2018 12:54

@JnanBikashDeka не мог бы задать ответ как решение?

N69S 11.12.2018 10:20
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
0
6
74
5

Ответы 5

Ваша ошибка, скорее всего, связана с объявлением пространства имен модели Student.

проверьте в файле класса App\Models\Student.php правильность пространства имен.

namespace App\Models;

затем попробуйте запустить в консоли:

composer dump-autoload

Измените эту строку:

use App\Models\Student;

к:

use App\Student;

Ваша ошибка предполагает, что класс не загружен в контроллер. Я предполагаю, что из-за проблемы вы создали отдельный каталог для моделей, если он у вас есть, тогда вам нужно обновить файл композитора, чтобы включить новые пути к классам для классов моделей. найдите автозагрузка в вашем файле composer.json и добавьте ввод в массив карта классов, как показано ниже

"autoload": {
    "classmap": [
        "database",
        "app/models"
    ]
}

затем в командной строке перейдите в каталог вашего проекта и выполните следующую команду:

composer dump-autoload

и если вы не создавали каталог новых моделей, просто запустите

composer dump-autoload

Убедитесь, что ваше пространство имен модели студента

используйте App\Models\Student, если ваша модель находится в каталоге App \ Models use App\Student, если ваша модель находится в каталоге приложений

Наконец запускаем composer dump-autoload

проверьте свое пространство имен модели студента

use App\Models\Student Если ваша модель находится в каталоге use App\Modelsuse App\Student, если ваша модель находится в каталоге приложений

затем перейдите в командную строку и запустите composer dump-autoload

Другие вопросы по теме