Doktrini: dizi olarak ayarlayın model değerleri

1 Cevap php

Ben ile benim modeli güncellemek istiyorum değerler dizisi var.

Doctrine_Access neredeyse tam olarak neye ihtiyacım olduğunu bir fonksiyon setArray sağlar - bu modelde alanları yok değerleri önemser hariç. Ben bu göz ardı etmek istiyorum.

Küçük bir örnek. Biz alan adı ile bir kullanıcı tablo var söylüyorlar.

$user = new User();
$user->setArray(array('username'=>'xyz'))->save();

Bu işe olur!

$user = new User();
$user->setArray(array('username'=>'xyz','anotherKey'=>'anotherValue'))->save();

That doesn't. I want Doctrine to just ignore anotherKey, if there is no related field. The intention is, that I don't want to filter my arrays before I update my model.

Bu halletmek için temiz ve en kolay yolu nedir?

1 Cevap

Bu yararlıdır

model bulmak yöntemi ekleyin:

class Address extends Doctrine_Record {

    public static function factory() {
        return new Address();
    }

public function findById($id) {
       $findObject = Doctrine::getTable('Address')->findOneByid($id);
       return $findObject;
     }
....

ve bunu kullanmak

  $address = Address::factory()
        ->findById(13)->set('name', 'new data')->set('anotherfield','another data')->save();