mam ten Entity
w Symfony2:doktryna: schema: aktualizacja nie respektować kolejność kolumn
<?php
namespace Project\UserBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Users
*
* @ORM\Table(name="users")
* @ORM\Entity
*/
class Users
{
/**
* @var integer
*
* @ORM\Column(name="user_id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $userId;
/**
* @var integer
*
* @ORM\Column(name="test", type="integer", nullable=false)
*/
private $test;
}
dodać następujący wiersz między {{userId}} i {{}} Test:
/**
* @var integer
*
* @ORM\Column(name="superbanana", type="integer", nullable=false)
*/
private $superbanana;
Potem wykonać w konsoli:
php app/console doctrine:schema:update --dump-sql
To da mi odpowiedź:
ALTER TABLE users ADD superbanana INT NOT NULL
** Jak mogę to zrobić zamiast tego? **
ALTER TABLE users ADD superbanana INT NOT NULL AFTER user_id
Doktryna nie obsługuje kolejności w terenie (nawet w przypadku powiązanych pól, będą one zawsze dołączane); Jeśli jest to dla ciebie ważne i nie masz żadnych danych w tabelach przed aktualizacją schematu uruchom 'php app/console doctrine: schema: drop' uruchom' php app/console doctrine: schema: create' – Javad