Wie kann man den ausgewählten Wert in Symfony entityType halten, wenn der Wert von Softdeletable gelöscht wurde?Php

PHP-Programmierer chatten hier
Anonymous
 Wie kann man den ausgewählten Wert in Symfony entityType halten, wenn der Wert von Softdeletable gelöscht wurde?

Post by Anonymous »

Zuallererst verwende ich Gedmos Softdeleterable, um gelöschte Einheiten zu verwalten. Außerdem habe ich mein eigenes Entityfield :

Code: Select all

namespace App\Form\Fields;

use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\Form\AbstractType;

class EntityField extends AbstractType
{
public function configureOptions(OptionsResolver $resolver): void
{
parent::configureOptions($resolver);

// some additional configuration

$resolver->setDefaults([
'query_builder' => function (EntityRepository $er): QueryBuilder {
return $er->createQueryBuilder('entity')
->andWhere('entity.deletedAt IS NULL');
},
]);
}

public function getParent(): string
{
return EntityType::class;
}
}
Wie Sie sehen können, verwende ich in meinem EntityField . p>
Es funktioniert einwandfrei, solange ich weichdetelierte Entität, die bereits verwendet wurde. Ich habe Benutzer , Datei und fileType Entitäten, Benutzer hat die Erfassung von Datei und Datei fileType enthält. Ich habe einige Filetype softdeletiert und für mich bedeutet es, dass ich keine neuen Datei dieses Filetyps erstellen möchte, sondern alle vorhandenen Dateien dieses Filetyps < /Code> sind immer noch legal und müssen in Formularen ordnungsgemäß angezeigt werden. "Richtig" bedeutet in diesem Fall, dass, wenn ich Datei Formular und diese genaue Datei render FileType , die Auswahl diese gelöscht hat Filetyp . Aber jetzt habe ich in diesem Feld keinen ausgewählten Wert und es wie "Es gibt keinen ausgewählten Dateityp für diese Datei" dh nicht.
Ich habe versucht, query_builder in FormEvents :: PRE_SET_DATA Ereignis und fügen Sie den Wert aus der Datenbank hinzu, aber es sieht so aus Unmodifizierte query_buider . Fall Ich muss die Formattribute manuell ändern. Vielleicht habe ich irgendeine Formularoptionen vergessen?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post