Symfony2嵌入式表单(Symfony2 Embedded Forms)
我试图理解symfony2中的嵌入表单。
我有两个实体
icon
和asset
它们之间存在多对多的关系,以及$icon->imageLarge
和icon->imageThumb
$icon->imageLarge
上的OneToOne
。注意:(资产是类名,但在图标内引用为
$image...
)我最终想要的是一个与图标相关的图像库和图标上的两列,以反映哪个图像是主缩略图和主要大图像......
我创建了一个IconType:
class IconType extends AbstractType{ public function buildForm(FormBuilderInterface $builder, array $options){ $builder->add('name'); $builder->add('imageThumb', new AssetType()); $builder->add('imageLarge', new AssetType()); } public function getName(){ return 'icon'; } public function setDefaultOptions(OptionsResolverInterface $resolver){ $resolver->setDefaults(array( 'data_class' => 'SixString\PearBundle\Entity\Icon', )); } }
和一个AssetType:
class AssetType extends AbstractType{ public function buildForm(FormBuilderInterface $builder, array $options){ $builder->add('file'); } public function getName(){ return 'asset'; } public function setDefaultOptions(OptionsResolverInterface $resolver){ $resolver->setDefaults(array( 'data_class' => 'SixString\PearBundle\Entity\Asset', )); } }
我在我的控制器中创建我的表单:
$icon = new Icon; $form = $this->createForm(new IconType(), $icon); if($request->isMethod('POST')) { $form->bind($request); if ($form->isValid()) { .... } } return $this->render('SixStringPearBundle:Icon:form.html.twig', array("form" => $form->createView()));
到目前为止,所有内容似乎都在进行交互,我在模板中创建了我的表单,它显示了图标名称字段以及两个资产文件上传者。
我迷路的地方是如何访问上传的
assets
。 我需要将这两个assets
持久保存到db,然后设置$icon->addImage($asset1); $icon->addImage($asset2);
$icon->addImage($asset1); $icon->addImage($asset2);
对于多对多和$icon->setImageThumb($asset1); $icon->setImageLarge($asset2);
$icon->setImageThumb($asset1); $icon->setImageLarge($asset2);
我不确定这一切是否有意义,但任何帮助搞清楚逻辑或只是如何访问这些资产将不胜感激!
I am trying to understand the embeded forms in symfony2.
I have two entities
icon
andasset
There is a many to many relationship between them as well as aOneToOne
on$icon->imageLarge
andicon->imageThumb
.note: (Asset is the class name but referenced as
$image...
inside the icon)What I am trying to end up with is a gallery of images related to an icon and two columns on the icon to reflect which image is the main thumbnail and the main large image...
I have created an IconType:
class IconType extends AbstractType{ public function buildForm(FormBuilderInterface $builder, array $options){ $builder->add('name'); $builder->add('imageThumb', new AssetType()); $builder->add('imageLarge', new AssetType()); } public function getName(){ return 'icon'; } public function setDefaultOptions(OptionsResolverInterface $resolver){ $resolver->setDefaults(array( 'data_class' => 'SixString\PearBundle\Entity\Icon', )); } }
and an AssetType:
class AssetType extends AbstractType{ public function buildForm(FormBuilderInterface $builder, array $options){ $builder->add('file'); } public function getName(){ return 'asset'; } public function setDefaultOptions(OptionsResolverInterface $resolver){ $resolver->setDefaults(array( 'data_class' => 'SixString\PearBundle\Entity\Asset', )); } }
I create my form in my controller:
$icon = new Icon; $form = $this->createForm(new IconType(), $icon); if($request->isMethod('POST')) { $form->bind($request); if ($form->isValid()) { .... } } return $this->render('SixStringPearBundle:Icon:form.html.twig', array("form" => $form->createView()));
Everything appears to be interacting so far, I have created my form in my template and it shows the icon name field as well as the two asset file uploaders.
Where I am getting lost is how to access the uploaded
assets
. I need to persist these twoassets
to db and then set$icon->addImage($asset1); $icon->addImage($asset2);
for the many to many and also$icon->setImageThumb($asset1); $icon->setImageLarge($asset2);
I'm not sure if this all makes sense, but any help figuring out the logic or simply how to access these assets would be appreciated!
原文:https://stackoverflow.com/questions/16978991
相关文章
更多《嵌入式开发(尚观科技)》(Embedded development)网络路由基础 ;已更新至第1集[MP4]
Symfony2网站开发
深入嵌入式Java虚拟机
《《Sundy--Android嵌入式底层开发课程共享版》《linux嵌入式系统开发.移植》》[压缩包]
嵌入式实现 微信网页版 群发信息。
《嵌入式linux视频教程/ARM视频教程/2440视频教程/6410视频教程》成都国嵌嵌入式培训中心的基于2440/6410开发板的视频教程[光盘镜像]
我是如何在15天开发出一个网站的
HTML5项目笔记2:离线系统表单设计
swing 嵌入 网页中
Windows Moible, Wince 使用.NET Compact Framework的进行蓝牙(Bluetooth)开发 之 蓝牙虚拟串口 (Bluetooth Virtual Serial Port)
最新问答
更多获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)
如何通过引用返回对象?(How is returning an object by reference possible?)
矩阵如何存储在内存中?(How are matrices stored in memory?)
每个请求的Java新会话?(Java New Session For Each Request?)
css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)
无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)
xcode语法颜色编码解释?(xcode syntax color coding explained?)
在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)
从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)
从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))
Copyright ©2023 peixunduo.com All Rights Reserved.粤ICP备14003112号
本站部分内容来源于互联网,仅供学习和参考使用,请莫用于商业用途。如有侵犯你的版权,请联系我们(neng862121861#163.com),本站将尽快处理。谢谢合作!