无法使用 Laravel 获取要保存在 MySQL 中的数据

Can't get data to save in MySQL using Laravel

我正在尝试将票数据保存在数据库中,当我提交表单时没有出现错误,但它没有将数据插入数据库。添加我的路线只是添加随机文本因为 post

控制器代码

public function store(Request $request)
{
    $this->validate($request, [
       'name' => 'required',
        'title' => 'required|min:15',
        'category' => 'required',
        'priority' => 'required',
        'message' => 'required|min:100',
    ]);

    $ticket = new Ticket([
        'user_id' => Auth::user()->id,
        'category_id' => $request->input('category'),
        'ticket_id' => strtoupper(str_random(10)),
        'name' => $request->input('name'),
        'title' => $request->input('title'),
        'priority_id' => $request->input('priority'),
        'message' => $request->input('message'),
    ]);

    $ticket->status_id = '1';
    $ticket->save();

    return 'Success';
}

模型代码

class Ticket extends Model
{

    protected $fillable = [
      'user_id', 'category_id', 'ticket_id', 'name', 'title', 'priority_id', 'message', 'status_id',
    ];

    public function category()
    {
        return $this->belongsTo(Category::class);
    }

    public function priority()
    {
        return $this->belongsTo(Priority::class);
    }

    public function status()
    {
        return $this->belongsTo(Status::class);
    }

    public function comments()
    {
        return $this->hasMany(Comment::class);
    }

    public function user()
    {
        return $this->belongsTo(User::class);
    }
}

路线

Route::get('/', 'HomeController@index')->name('home');
Route::get('/home', 'HomeController@index')->name('home');
Route::get('/compliance', 'HomeController@Compliance')->name('compliance');
Route::get('/messages', 'HomeController@Messages')->name('messages');
Route::get('/tickets', 'TicketsController@userTickets')->name('tickets');
Route::get('/tickets/create', 'TicketsController@create')->name('tickets/create');
Route::post('/tickets/store', 'TicketsController@store');

感谢所有帮助,我发现我在控制器中有两个错误,这花了我 2 天时间才弄清楚 LOL

        $this->validate($request, [
        'name' => 'required', // I removed this
        'title' => 'required|min:15',
        'category' => 'required',
        'priority' => 'required',
        'message' => 'required|min:100',
    ]);

并且在 $ticket

       $ticket = new Ticket([
        'user_id' => Auth::user()->id,
        'category_id' => $request->input('category'),
        'ticket_id' => strtoupper(str_random(10)),
        'name' => $request->input('name') // I replaced this with 'name' => Auth::user()->name,
        'title' => $request->input('title'),
        'priority_id' => $request->input('priority'),
        'message' => $request->input('message'),
    ]);