Когда поле формы пустое, но должно содержать «целочисленное» значение в базе данных, некоторые движки попытаются вставить пустую строку в целочисленное поле.
Это то, что вызывает сообщение об ошибке, в основном пытается поместитьчерез круглое отверстие.
Если вы реализуете Nullable trait , вы можете убедиться, что эти поля, если они оставлены пустыми, вставлены как истинные NULL
вместостроки
Я предпочитаю иметь trait в качестве оператора использования над классом, а затем краткое использование внутри самого класса.
Вы также можете поместить его непосредственно в классна use \October\Rain\Database\Traits\Nullable;
вместо use Nullable;
, если вы не хотите, чтобы он появлялся в двух местах.Это зависит от ваших предпочтений.
use Model;
use October\Rain\Database\Traits\Nullable;
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/**
* Page Model
*/
class ModuleLink extends Model
{
public $table = 'your_table_name_here';
use Nullable; // This sets the trait to be used in this Model.
//^^^^^^^^^^^^^
public $nullable = [
'module_id', // Define which fields should be inserted as NULL when empty
'sort_order',
];