Класс 'App \ Models \ Registration' не найден, хотя я импортировал его - PullRequest
0 голосов
/ 26 сентября 2019

Класс 'App \ Models \ Registration' не найден, у меня есть импорт Регистрационный класс

Я пытаюсь сохранить student_id вместе с соответствующим массивом предметов Когда я дам дд ($ request-> all ()) iполучить исключенные результаты, которые

"student_id" => "1"
"subjects" => array:2 [▼
 0 => "1"
 1 => "2"
]

, но я получаю исключение при попытке сохранить в базу данных

это моя схема регистрации

 Schema::create('registrations', function (Blueprint $table) {
       $table->bigIncrements('id');
        $table->unsignedBigInteger('student_id')->index();
        $table->string('subjects');

        $table->foreign('student_id')->references('id')->on('students');

        $table->timestamps();;
    });

это моймодель регистрации

   class Registration extends Model
   {
    protected $table = 'registrations';

    protected $fillable = ['student_id','subjects'];

    protected $cast = [
        'student_id'    => 'Integer',
        'subjects'      => 'array',
    ];

  public function student(){
    $this->belongsTo(Student::class);
  }

  public function subjects()
  {
    $this->hasMany(Subject::class);
  }

}

я использую массив флажков для получения субъектов

 <input class="form-check-input" name="subjects[]" value="{{$subject->id}}" type="checkbox">

это код контроллера регистрации, я импортировал модель регистрации

namespace App\Http\Controllers\Admin;

  use Illuminate\Http\Request;
  use App\Models\Registration;
  use App\Http\Controllers\BaseController;

  class RegistrationController extends BaseController
  {
    public function store(Request $request)
    {
        $registration = Registration::create(request()->validate([
        'student_id' => 'required|integer',
        'subjects' => 'required',
        'subjects.*'=> 'accepted',
    ]));

 }

iхотите сохранить student_id с массивом предметов

предметы ученика

1 [2,4,5] enter code here

Ответы [ 2 ]

0 голосов
/ 26 сентября 2019

Я думаю, вам нужно добавить пространство имен.

<?php

namespace App\Models;

class Registration extends Model { ... }

?>

Также ваша модель должна храниться в каталоге App / Models / Registration.php .

0 голосов
/ 26 сентября 2019

я думаю, что вы создаете свою модель регистрации в каталоге приложений ... пожалуйста, проверьте ваш каталог. Затем используйте

use App\Registration;

Если это в каталоге приложений \ моделей, то в модели регистрации,

<?php namespace App\Models;
 use Illuminate\Database\Eloquent\Model; 
class Registration extends Model { }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...