form verileri ile bir doktrin 2 modeli doldurmak için kolay yolu?

0 Cevap php

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?

0 Cevap