Intereting Posts

Определить свойство zerofill и размер при миграции схемы поля с помощью laravel

Как определить свойство zerofill и размер (2) при миграции схемы поля с помощью Laravel?

Schema::create('books', function (Blueprint $table) { $table->integer('reference')->length(2); }); 

и это поле с нулефилом.

Я бы хотел использовать мою сеялку:

 public function run() { Book::create ([ 'reference' => 01 ]); } 

Zerofill не является стандартом SQL. Создатель shema laravel предоставляет только эти стандарты ANSI SQL.

Но вы можете использовать обходной путь, чтобы определить его с помощью инструкции raw sql:

create_books.php

 Schema::create('books', function (Blueprint $table) { $table->integer('reference'); }); DB::statement('ALTER TABLE books CHANGE reference reference INT(2) UNSIGNED ZEROFILL NOT NULL'); 

Как уже упоминалось, чтобы переносить перенос переносимых файлов, вы хотите использовать его для доступа. Это будет выглядеть примерно так:

Модель Book.php

 public function getReferenceAttribute($value) { if($value){ return str_pad($value, 2, '0', STR_PAD_LEFT); }else{ return null; } }