Başka gibi bir tablo oluşturmak için Doktrini kullanarak herhangi bir şekilde, var mı? Ben MySQL bunu bir fonksiyon olduğunu biliyorum:
CREATE TABLE user2 LIKE user;
ve tablolar kullanıcı ve birey2 aynı olacaktır. Bu Doktrini yapılabilir?
Ben ne arıyorsun senin modeli oluşturulduğunda on the schema level o user2
user
devralır (senin örnek kullanalım) tanımlamak olduğunu düşünün. Sen is described in the documentation öğretinin concrete devralmayı kullanarak bunu yapabilirsiniz.
Yani, içinde schema.yml
:
User:
columns:
name: string
User2:
inheritance:
extends: User
type: concrete
columns:
something: int
Bu şekilde user2
ayrı bir tablo ve daha önce {[(1)}] 'de tanımlandığı gibi aynı sütun ("name") içerir. Ben iki identical tabloları istiyorum neden emin değilim, ama bu yukarıdaki yöntemi kullanarak kesinlikle mümkündür.
Ben düşünüyorum. (
Burada gibi şablondan tabloları http://www.doctrine-project.org/documentation/cookbook/1_1/en/plug-and-play-schema-information-with-templates oluşturmak veya Doctrine_RawSql kullanabilirsiniz.
Doktrin Bunun için basit bir yöntem sağlar: Doctrine_Record :: copy ().
$copy = $user->copy();
Notice that copying the record with copy() returns a new record (state TDIRTY) with the values of the old record, and it copies the relations of that record. If you do not want to copy the relations too, you need to use copy(false).
Get a copy of user without the relations
$copy = $user->copy(false);