rarala2020
@rarala2020 (ら らら)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Laravelでuuidを利用しようとfillでセーブしたらAdd [_token] to fillable property to allow mass assignment on [App\Post].エラーが出た

Q&A

Closed

LaravelでUUIDを利用したく、

composer require moontoast/math

をインストールしたところ、フォームから投稿した後に下記のエラーが発生しました

lluminate\Database\Eloquent\MassAssignmentException
Add [_token] to fillable property to allow mass assignment on [App\Post].

関連記事を調べ、モデル(Post.php)にホワイトリストを記述する必要があるのかと思うのですが、

protected $fillable = ['_token'];

と記述するは、テーブルに存在しないものなので表記として誤っていると思うのですが
どのファイルにどのような記述をすればエラーを解消できますでしょうか。

エラーを指しているのは下記のファイルでした

vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php
   * @throws \Illuminate\Database\Eloquent\MassAssignmentException
     */

    public function fill(array $attributes)
    {
        $totallyGuarded = $this->totallyGuarded();

        foreach ($this->fillableFromArray($attributes) as $key => $value) {
            $key = $this->removeTableFromKey($key); 

            // The developers may choose to place some attributes in the "fillable" array
            // which means only those attributes may be set through mass assignment to
            // the model, and all others will just get ignored for security reasons.

            if ($this->isFillable($key)) {
                $this->setAttribute($key, $value);
            } elseif ($totallyGuarded) {
                throw new MassAssignmentException(sprintf(
                    'Add [%s] to fillable property to allow mass assignment on [%s].', //ここら辺
                    $key, get_class($this)

                ));
            }
        }

        return $this;

    }
0

No Answers yet.

Your answer might help someone💌