我正在将项目转换为Doctrine 2.4
,并且使用的数据库是PostgreSQL。
我想知道是否可以告诉Doctrine
按特定顺序创建表(实体)的列?
我正在转换的表有很多列,其中一些是与其他表的关系。创建表格后,第一列将是primary keys
,后面是foreign keys
,最后是其他所有内容。
以下是一个示例代码:
/**
* @Entity
* @Table(name="receipts")
*/
class Receipt {
/**
* @var
* @Id
* @GeneratedValue(strategy="IDENTITY")
* @Column(name="receipt_id", type="integer")
*/
private $receipt_id;
/**
* @var
* @Column(name="created_date", type="date", nullable=false)
*/
private $created_date;
/**
* @var
* @Column(name="updated_date", type="date", nullable=true)
*/
private $updated_date;
/**
* @var
* @Column(name="invoice_number", type="string", nullable=true)
*/
private $invoice_number;
/**
* @var
* @Column(name="invoice_date", type="date", nullable=true)
*/
private $invoice_date;
/**
* @var
* @Column(name="invoice_link", type="text", nullable=true)
*/
private $invoice_link;
/**
* @var
* @ManyToOne(targetEntity="models\Receipts\Invoice\Type")
* @JoinColumn(name="invoice_type_id", referencedColumnName="invoice_type_id")
*/
private $invoiceType;
/**
* @var
* @ManyToOne(targetEntity="models\Payments\Method")
* @JoinColumn(name="invoice_payment_method_id", referencedColumnName="payment_method_id")
*/
private $invoicePaymentMethod;
/**
* @var
* @ManyToOne(targetEntity="models\Payments\Type")
* @JoinColumn(name="invoice_payment_type_id", referencedColumnName="payment_type_id")
*/
private $invoicePaymentType;
public function __construct(){
$this->created_date = new \Date_Time();
$this->updated_date = new \Date_Time();
}
?>
上面的代码在PHPPgAdmin
中将如下所示:
这就是我希望列出现的方式:
当然,一切都很好。只是与我一起工作的人(包括我)习惯于看到桌子和桌子。以具体方式排序的列,以便我们可以快速轻松地找到事物。希望这里有一个学说忍者可以帮助我解决这个问题。我在文档中找不到任何内容。