Hátha valaki a nagyérdeműből használ Symfony-t.
Indulásként lenne is egy kérdésem :)
FOS UserBundle: Hogyan cseréljem ki a "/login" route-ot simán a "/"-re?
- 2125 megtekintés
Hozzászólások
nem próbáltam, de szerintem itt lesz a megoldás: http://stackoverflow.com/questions/19608458/how-to-customize-fos-userbu…
- A hozzászóláshoz be kell jelentkezni
Igen, ez volt az, köszi.
Plusz mezőket szeretnék berakni. Gondolom felveszem őket a Entity/User.php-be és csinálok változót annotációkkal, meg getter / settert. Kell-e még valamibe belenyúlni?
- A hozzászóláshoz be kell jelentkezni
A FormTypeot is érdemes alakítani hozzá, hogy a plusz adatokat fel lehessen vinni: https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/overriding_forms.md
De egy teljesen saját regisztrációs action / FormType létrehozása sem bonyolult, a UserManager segít: https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/user_manager.md
- A hozzászóláshoz be kell jelentkezni
Mai kétségbeesett kezdő kérdésem :)
File feltöltés:
Form builderrel készítem el a megjelenítendőket a twighez. Nem kötelező file-t csatolni a tárolásra kerülő szöveg mellé.
Sajnos submit-kor mégis kapok egy üzenetet, hogy "válasszon egy fájlt". Hiába adom meg a buildernek: 'required' => false
Mit hagyhattam ki?
Entity:
class Page
{
...
private $img1;
public function setImg1($img)
{
$this->img1=$img;
return $this;
}
public function getImg1()
{
return $this->img1;
}
...
}
Ez pedig a builder rész
class PageType extends AbstractType
{
...
public function buildForm(FormBuilderInterface $builder, array $options)
{
...
$builder->add('img1','file',array("attr" => array("accept" => "image/*",'required' => false, 'empty_data' => null)));
...
}
...
}
Twig rész:
{{ form_widget(form.img1, { 'attr': {'class': 'blabla'} }) }}
---
JMP $EA31
[ ...és már 10 éve regisztrált HUP felhasználó :) ]
- A hozzászóláshoz be kell jelentkezni
Az 'attr' opció html attribútumok megadására való.
A 'required' opciónak az 'attr' opcióval egy szinten kell lennie, mert azzal nem (csak) egy html attribútumot akarsz megadni, hanem a file field működését szeretnéd befolyásolni.
Ugyanígy, az 'empty_data' is rossz helyen van, ennek sem az 'attr' tömbben kéne lennie (és egyébként, mivel a default értéke null, így meg sem kéne adnod).
A file field lehetséges opcióinak leírását itt láthatod: http://symfony.com/doc/current/reference/forms/types/file.html
- A hozzászóláshoz be kell jelentkezni
A 'required' opciónak az 'attr' opcióval egy szinten kell lennie...
Ez az! Köszi!
- A hozzászóláshoz be kell jelentkezni
Mai kérdésem:
Form builder
Egy ilyet szeretnék megvalósítani:
< form action="file-upload.php" method="post" enctype="multipart/form-data">
Send these files:< br />
< input name="userfile[]" type="file" />
...
...
< input name="userfile[]" type="file" />
< input type="submit" value="Send files" />
A cél az, hogy több file upload mező legyen.
Ezzel próbálkozom:
/**
* @Assert\File(
* maxSize = "1500k",
* mimeTypes = {"image/png", "image/jpeg", "image/gif"},
* mimeTypesMessage = "Not an Image",
* maxSizeMessage = "Max. 1500KB",
* )
*/
private $arrFiles;
public function setArrFiles(array $arrFileArray)
{
$this->arrFiles=$arrFileArray;
}
public function getArrFiles()
{
return $this->arrFiles;
}
public function __construct()
{
$this->arrFiles = array();
}
----------------------------------------
$builder->add('arrFiles','file',
array
(
"label" => "valami label",
"required" => FALSE,
"attr" => array
(
"accept" => "image/jpeg,image/png,image/gif",
"multiple" => "multiple",
"name" => "arrFiles[]",
)
)
);
Első kérdésem, hogy egyáltalán így kell-e csinálni?
A második, hogy miként érem el a twig-ben, hogy mezőnként tudjam megjeleníteni?
Köszi a szakértést!
- A hozzászóláshoz be kell jelentkezni
Nos, az biztos, hogy ez így nem jó. Valószínű ebből kellene kiindulni. http://symfony.com/doc/current/cookbook/form/form_collections.html
- A hozzászóláshoz be kell jelentkezni