SQLSTATE [HY000]: общая ошибка: 1364 Поле 'user_id' не имеет значения по умолчанию laravel 6.9.0 - PullRequest
0 голосов
/ 10 февраля 2020

Я пытался поместить что-то в свою базу данных, но получил ошибку: SQLSTATE [HY000]: Общая ошибка: 1364 Поле 'user_id' не имеет значения по умолчанию. Эта программа сделана в laravel 6.9.0.

Это мой контроллер:

    public function store ()
{
    request()->validate([
        'player' => ['required'],
        'team_id' => ['required'],
        'country' => ['required'],
        'birth_day' => ['required'],
        'age' => ['required'],
        'length' => ['required'],
        'weight' => ['required'],
        'position' => ['required'],
        'player_img' => ['required'],
    ]);

    $slug = $this->slugify(request('player'));
    $user = \Auth::user();

    Players::create([
        'user_id' => $user->id,
        'player' => request('player'),
        'team_id' => request('team_id'),
        'country_player' => request('country'),
        'birth_day' => request('birth_day'),
        'age' => request('age'),
        'length' => request('length'),
        'weight' => request('weight'),
        'position' => request('position'),
        'player_img' => request('player_img'),
        'slug_player' => $slug
    ]);
    return redirect('/admin/add-player');
}

Это моя форма:

    <form method="POST" action="/admin/add-player/database">
    @csrf
    <input type="text" name="player" required>
    <br>
    <select class="form-control input-fields" name="team_id">
        <option value="">Kies een team</option>
        @foreach($teams as $team)
            <option value="{{ $team->id }}">{{ $team->team_name }}</option>
        @endforeach
    </select>
    <br>
    <input type="text" name="country" required>
    <br>
    <input type="text" name="birth_day"required>
    <br>
    <input type="text" name="age" required>
    <br>
    <input type="text" name="length" required>
    <br>
    <input type="text" name="weight" required>
    <br>
    <input type="text" name="position" required>
    <br>
    <input type="text" name="player_img" required>
    <br>
    <input type="submit" name="submit" class="form-control input-fields btn-primary">
</form>

Это моя модель :

class Players extends Model
{
    protected $guarded = [];

    protected $fillable = [
        'user_id'
    ];
}

Может кто-нибудь помочь мне с этой проблемой?

Ответы [ 2 ]

1 голос
/ 10 февраля 2020

Вы должны добавить 'user_id' к защищенному $fillable свойству внутри Модели игроков

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

Измените свою модель на

class Players extends Model
{
    protected $guarded = [];

    protected $table = 'players';

    protected $fillable = [
        'user_id','player','team_id','country_player','birth_day','age','length','weight','position','player_img','slug_player'
    ];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...