mirror of
https://github.com/wallabag/wallabag.git
synced 2025-08-06 17:41:01 +00:00
Improve migration
This commit is contained in:
parent
a7e2218e25
commit
9a5231e8c4
1 changed files with 7 additions and 9 deletions
|
@ -26,21 +26,18 @@ class Version20160410190541 extends AbstractMigration implements ContainerAwareI
|
||||||
public function up(Schema $schema)
|
public function up(Schema $schema)
|
||||||
{
|
{
|
||||||
$this->addSql('ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL');
|
$this->addSql('ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function postUp(Schema $schema)
|
||||||
|
{
|
||||||
$em = $this->container->get('doctrine.orm.entity_manager');
|
$em = $this->container->get('doctrine.orm.entity_manager');
|
||||||
$queryBuilder = $this->connection->createQueryBuilder();
|
$repository = $em->getRepository('WallabagCoreBundle:Entry');
|
||||||
$queryBuilder
|
$entries = $repository->findAll();
|
||||||
->select('e.uuid')
|
|
||||||
->andWhere('e.uuid IS NULL');
|
|
||||||
$entries = $queryBuilder->execute();
|
|
||||||
|
|
||||||
/** @var Entry $entry */
|
/** @var Entry $entry */
|
||||||
foreach ($entries as $entry) {
|
foreach ($entries as $entry) {
|
||||||
$entry->generateUuid();
|
$this->addSql('UPDATE `wallabag_entry` SET `uuid` = "'.uniqid('', true).'" WHERE id = '.$entry->getId());
|
||||||
$em->persist($entry);
|
|
||||||
$em->clear();
|
|
||||||
}
|
}
|
||||||
$em->flush();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -48,6 +45,7 @@ class Version20160410190541 extends AbstractMigration implements ContainerAwareI
|
||||||
*/
|
*/
|
||||||
public function down(Schema $schema)
|
public function down(Schema $schema)
|
||||||
{
|
{
|
||||||
|
$this->abortIf($this->connection->getDatabasePlatform()->getName() != 'sqlite', 'This down migration can\'t be executed on SQLite databases, because SQLite don\'t support DROP COLUMN.');
|
||||||
$this->addSql('ALTER TABLE `wallabag_entry` DROP `uuid`');
|
$this->addSql('ALTER TABLE `wallabag_entry` DROP `uuid`');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue