Böyle bir User modelini düşünün:
class User {
/**
* ...some mapping info...
*/
private $username;
/**
* ...some mapping info...
*/
private $password;
public function setUsername($username) {
$this->username = $username;
}
public function setPassword($password) {
$this->password = $password;
}
}
Göndermek için örnek bir form, yeni bir User:
<form action="/controller/saveUser" method="post">
<p>Username: <input type="text" name="username" /></p>
<p>Password: <input type="text" name="password" /></p>
</form>
Şu anda benim denetleyicisi yeni bir User Bu gibi tasarruf:
public function saveUser() {
$user = new User();
$user->setUsername($_POST['username']);
$user->setPassword($_POST['password']);
$entityManager->persist($user);
}
Ben formu aracılığıyla aldığınız özelliklerin her biri için belirleyici yöntemini çağırarak, demektir.
Benim soru: is there a method in Doctrine which allows you to automatically map form data/an array structure to a Doctrine model? İdeal bir benzer yapıya sahip bir dizi iç içe nesne grafikleri doldurmak mümkündür.
İdeal bu satırları (pseudo kodu / örneği) birlikte bir şey benim denetleyicisi kodunu değiştirmek olabilir:
public function saveUser() {
$user = Doctrine::populateModelFromArray('User', $_POST); // does this method exist?
$entityManager->persist($user);
}
Herhangi bir ipucu için şimdiden teşekkürler!
Böylece, Doktrini 2 eşdeğer var - EDIT: O (http://www.doctrine-project.org/projects/orm/1.2/docs/manual/working-with-models%3Aarrays-and-objects%3Afrom-array/en) gibi bir şey bu Doktrini 1 var gibi görünüyor?