Я новичок в laravel, я хочу вставить данные в Laravel, для этого я написал следующий код, но данные не вставлены в базу данных, и нет ошибок. Мой код выглядит следующим образом, я создал модель, представление, контроллер для этого.
Контроллер: Category.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use App\Model\Category;
class Categories extends Controller
{
public function create()
{
return view('pages.addCategories');
}
public function store(Request $request)
{
$validatedData = $request->validate([
'name' => 'required',
]);
Category::create($request->all());
return redirect('admin/categories');
}
}
Categories_table:
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateCategoriesTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('categories', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('name');
$table->unsignedInteger('parent_id')->nullable();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('categories');
}
}
Вид:
<form action="/admin/add-categories" method="post" role="form">
{{ csrf_field() }}
<div class="card-body">
<div class="form-group">
<label for="exampleInputEmail1">Category Name</label>
<input type="text" class="form-control" name="name" placeholder="Enter Category">
</div>
<div class="card-footer">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</form>
Модель Категория:
<?php
namespace App;
namespace App\Model;
use DB;
use Illuminate\Database\Eloquent\Model;
class Category extends Model
{
protected $fillable = [
'name'
];
public function subcategory(){
return $this->hasMany('App\Category', 'parent_id');
}
}
веб. php
Route::get('admin/categories', 'Categories@create');
Route::post('admin/add-categories', 'Categories@store');