Tôi đang sử dụng Laravel và Eloquent trong hai năm và hôm nay tôi đã quyết định cài đặt Laravel 5.3 mới và thử cái gì đó với nó.Laravel 5.3 Tạo mô hình Trả về "Trường không có giá trị mặc định"
Tôi đã sử dụng lược đồ cơ sở dữ liệu cũ của tôi và tạo mô hình của tôi, các cột có thể điền được xác định. Đây là những gì mô hình Page
của tôi trông giống như:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Page extends Model
{
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'language',
'title',
'slug',
'url',
'description',
'tags',
'wireframe',
'order',
'is_active'
];
public function menus()
{
return $this->belongsToMany(Menu::class);
}
}
url
thuộc tính là một cột TEXT
-type trên MySQL vì vậy nếu tôi không vượt qua bất kỳ giá trị cho nó khi tạo ra một mô hình, nó phải là một chuỗi rỗng. Thay vào đó, tôi tiếp tục gặp lỗi SQLSTATE[HY000]: General error: 1364 Field 'url' doesn't have a default value
.
Đây là nỗ lực của tôi để tạo ra một mô hình mới gởi:
Page::create([
'title' => $root_menu['title'],
'slug' => $root_menu['slug'],
'language' => $this->language,
'wireframe' => key(config('cms.wireframe')),
'order' => 0
]);
Đây có phải là một vấn đề có liên quan Laravel 5.3 hay tôi thiếu cái gì? Cảm ơn trước sự giúp đỡ của bạn.
Con trai lén lút đó ... – swt83