Как отключить "create at" и "update at" в файле seed Laravel?
Я не хочу использовать строки "update_at" и "create_at", но семенной файл Laravel пытается его обновить. Как его отключить?
вот код, который я использую:
use IlluminateDatabaseMigrationsMigration;
class SeedUsersTable extends Seeder {
// $timestamps = false; <=== will return error
// public static $timestamps = false; <=== will return error
public function run()
{
DB::table('users')->delete();
User::create(array(
'id' => 1,
'name' => 'Админ',
'password' => Hash::make('admin'),
'login' => 'admin'
));
}
}
2 ответов
use Illuminate\Database\Migrations\Migration;
class SeedUsersTable extends Seeder {
public function run()
{
DB::table('users')->delete();
$user = new User(array(
'id' => 1,
'name' => 'Админ',
'password' => Hash::make('admin'),
'login' => 'admin'
));
$user->timestamps = false;
$user->save();
}
}
согласно документам Laravel,
... по умолчанию Eloquent будет автоматически поддерживать столбцы created_at и updated_at в таблице базы данных. Просто добавьте эти столбцы timestamp в свою таблицу, и Eloquent позаботится об остальном.
Если вы не хотите красноречиво поддерживать эти столбцы, в вашем User
модель добавить следующее:
class User extends Eloquent {
public $timestamps = false;
}