Temelde aşağıdakileri yapmak için doSave() yöntemimi geçersiz kılıyorum: Kullanıcının seçim yapabileceği ya da yeni bir seçenek yazabileceği bir sfWidgetFormPropelChoice alanı var. Widget'ın değerini nasıl değiştirebilirim? Ya da belki de yanlış yöne yaklaşıyorum.Symfony'de, form alanının değeri nasıl ayarlanır?
public function doSave($con = null)
{
// Save the manufacturer as either new or existing.
$manufacturer_obj = ManufacturerPeer::retrieveByName($this['manufacturer_id']->getValue());
if (!empty($manufacturer_obj))
{
$this->getObject()->setManufacturerId($manufacturer_obj->getId()); // NEED TO CHANGE THIS TO UPDATE WIDGET'S VALUE INSTEAD?
}
else
{
$new = new Manufacturer();
$new->setName($this['manufacturer_id']->getValue());
$new->save();
$this->getObject()->setManufacturerId($new->getId()); // NEED TO CHANGE THIS TO UPDATE WIDGET'S VALUE INSTEAD?
}
parent::doSave($con);
}
teşekkürler! Bu işi akranda yapmaktan nasıl vazgeçersiniz? Form ile ilgili olduğundan, formda gitmemeli mi? Akran, kimliği veya yeni bir isim olacak form verisine sahip değildir. –