Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] upload pliku w symfony 1.2 w embedForm
stachuf11
post 8.04.2009, 07:30:40
Post #1





Grupa: Zarejestrowani
Postów: 154
Pomógł: 1
Dołączył: 24.04.2006

Ostrzeżenie: (0%)
-----


witam
mam 2 tabele, produkty i pliki, tabela pliki jest w realicji z tabelą produkty i ma pole produkty_id, oraz pole plik

  1. <?php
  2. class ProduktyForm extends BaseProduktyForm
  3. {
  4.  public function configure()
  5.  {
  6.   foreach($this->getObject()->getPlikis() as $plik)
  7.     {
  8.       $formularz=new PlikiForm($plik);
  9.        $this->embedForm('Pliki'.$plik->getId(), $formularz );
  10.     }
  11.    $formularz=new PlikiForm();
  12.    $this->embedForm('pliki',$formularz);
  13.  
  14.  
  15.  }
  16. ?>


oraz

  1. <?php
  2. class PlikiForm extends BasePlikiForm
  3. {
  4.  public function configure()
  5.  {
  6.    $this->widgetSchema['plik']= new sfWidgetFormInputFile();
  7.     $this->validatorSchema['file'] = new sfValidatorFile(
  8.  'required'   => false,
  9.  'path'       => sfConfig::get('sf_upload_dir').'/jobs',
  10.  'mime_types' => 'web_images',
  11. )
  12. );
  13.  
  14.  }
  15. ?>

gdy controlerze wywołam
  1. <?php
  2. $this->form1=new ProduktyForm();
  3. ?>


, działa to poprawnie, pliki są uploadowane w podformularzach , a teraz mam pytanie, jak kontrolować nazwę pliku uploadowanego, lub ewentualnie przeskalować rozmiar obrazka, w jakiej akcji w widgecie to umieścic?

Ten post edytował stachuf11 14.04.2009, 17:44:09
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
lukis
post 23.04.2009, 14:16:38
Post #2





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 10.09.2007

Ostrzeżenie: (0%)
-----


znalazles moze rozwiazanie?

pewne rozwiazanie widze tutaj: http://forum.php.pl/index.php?showtopic=11...&hl=symfony

sam mam podobny problem w generatorze backendu symfony 1.2.5 doctrine

chce moc zmienic nazwe zapisywanego pliku i ewentualnie przeprowadzic inne modyfikacje

jak znajde sam rozwiazanie to napisze

Ten post edytował lukis 23.04.2009, 14:20:08
Go to the top of the page
+Quote Post
stachuf11
post 24.04.2009, 08:49:04
Post #3





Grupa: Zarejestrowani
Postów: 154
Pomógł: 1
Dołączył: 24.04.2006

Ostrzeżenie: (0%)
-----


ja używam propela, ale rozwiązanie może nie za elegancie znalazłem tutaj

http://www.symfony-project.org/forms/1_2/e...pel-Integration

na samym dole jest opis akcji

  1. <?php
  2. public function updateObject($values = null)
  3.  {
  4.    $object = parent::updateObject($values);
  5.  
  6.    $object->setFile(str_replace(sfConfig::get('sf_upload_dir').'/', '', $object->getFile()));
  7.  
  8.    return $object;
  9.  }
  10. ?>


czyli akcja updateObject, zmieniam nazwę już załadowanego poliku no i również w obiekcie, można tutaj też np zmienić rozmiar załadowanego pliku graficznego pluginem thumbnail itp, jeśli coś fajniejszego znajdziesz daj znac

przykład do którego link podałeś dotyczy akcji w kontrolerze, a to co ja podałem dotyczy definicji modelu formularza w lib/forms

Ten post edytował stachuf11 24.04.2009, 08:58:10
Go to the top of the page
+Quote Post
lukis
post 24.04.2009, 11:01:28
Post #4





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 10.09.2007

Ostrzeżenie: (0%)
-----


znalzlem cos takiego jeszcze na stronie symfony w manualu o widgetach

jeszcze nie testowalem ale mam nadzieje, ze bedzie dzialac

najbardziej interesuje mnie mozliwosc nadania nazwy plikowi zgodnej z ID w bazie danych

http://www.symfony-project.org/tutorial/1_...b8c7_validators

Ten post edytował lukis 24.04.2009, 11:03:03
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.06.2025 - 11:03