当前位置: 首页>>代码示例>>PHP>>正文


PHP FormView::getParent方法代码示例

本文整理汇总了PHP中Symfony\Component\Form\FormView::getParent方法的典型用法代码示例。如果您正苦于以下问题:PHP FormView::getParent方法的具体用法?PHP FormView::getParent怎么用?PHP FormView::getParent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Symfony\Component\Form\FormView的用法示例。


在下文中一共展示了FormView::getParent方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: buildView

 /**
  * {@inheritdoc}
  */
 public function buildView(FormView $view, FormInterface $form)
 {
     $name = $form->getName();
     $readOnly = $form->getAttribute('read_only');
     if ($view->hasParent()) {
         if ('' === $name) {
             throw new FormException('Form node with empty name can be used only as root form node.');
         }
         if ('' !== ($parentFullName = $view->getParent()->get('full_name'))) {
             $id = sprintf('%s_%s', $view->getParent()->get('id'), $name);
             $fullName = sprintf('%s[%s]', $parentFullName, $name);
         } else {
             $id = $name;
             $fullName = $name;
         }
         // Complex fields are read-only if themselves or their parent is.
         $readOnly = $readOnly || $view->getParent()->get('read_only');
     } else {
         $id = $name;
         $fullName = $name;
         // Strip leading underscores and digits. These are allowed in
         // form names, but not in HTML4 ID attributes.
         // http://www.w3.org/TR/html401/struct/global.html#adef-id
         $id = ltrim($id, '_0123456789');
     }
     $types = array();
     foreach ($form->getTypes() as $type) {
         $types[] = $type->getName();
     }
     $view->set('form', $view)->set('id', $id)->set('name', $name)->set('full_name', $fullName)->set('read_only', $readOnly)->set('errors', $form->getErrors())->set('value', $form->getClientData())->set('disabled', $form->isDisabled())->set('required', $form->isRequired())->set('max_length', $form->getAttribute('max_length'))->set('pattern', $form->getAttribute('pattern'))->set('size', null)->set('label', $form->getAttribute('label'))->set('multipart', false)->set('attr', $form->getAttribute('attr'))->set('types', $types)->set('translation_domain', $form->getAttribute('translation_domain'));
 }
开发者ID:421p,项目名称:symfony,代码行数:34,代码来源:FormType.php

示例2: buildView

 /**
  * {@inheritdoc}
  */
 public function buildView(FormView $view, FormInterface $form)
 {
     $name = $form->getName();
     if ($view->hasParent()) {
         if ('' === $name) {
             throw new FormException('Form node with empty name can be used only as root form node.');
         }
         if ('' !== ($parentFullName = $view->getParent()->get('full_name'))) {
             $id = sprintf('%s_%s', $view->getParent()->get('id'), $name);
             $fullName = sprintf('%s[%s]', $parentFullName, $name);
         } else {
             $id = $name;
             $fullName = $name;
         }
     } else {
         // If this form node have empty name, set id to `form`
         // to avoid rendering `id=""` in html structure
         $id = $name ?: 'form';
         $fullName = $name;
     }
     $types = array();
     foreach ($form->getTypes() as $type) {
         $types[] = $type->getName();
     }
     $view->set('form', $view)->set('id', $id)->set('name', $name)->set('full_name', $fullName)->set('errors', $form->getErrors())->set('value', $form->getClientData())->set('read_only', $form->isReadOnly())->set('required', $form->isRequired())->set('max_length', $form->getAttribute('max_length'))->set('pattern', $form->getAttribute('pattern'))->set('size', null)->set('label', $form->getAttribute('label'))->set('multipart', false)->set('attr', $form->getAttribute('attr'))->set('types', $types)->set('translation_domain', $form->getAttribute('translation_domain'));
 }
开发者ID:rudott,项目名称:symfony,代码行数:29,代码来源:FieldType.php

示例3: buildView

 public function buildView(FormView $view, FormInterface $form)
 {
     if ($view->hasParent()) {
         $parentId = $view->getParent()->get('id');
         $parentName = $view->getParent()->get('name');
         $id = sprintf('%s_%s', $parentId, $form->getName());
         $name = sprintf('%s[%s]', $parentName, $form->getName());
     } else {
         $id = $form->getName();
         $name = $form->getName();
     }
     $view->set('form', $view);
     $view->set('id', $id);
     $view->set('name', $name);
     $view->set('errors', $form->getErrors());
     $view->set('value', $form->getClientData());
     $view->set('read_only', $form->isReadOnly());
     $view->set('required', $form->isRequired());
     $view->set('max_length', $form->getAttribute('max_length'));
     $view->set('size', null);
     $view->set('label', $form->getAttribute('label'));
     $view->set('multipart', false);
     $view->set('attr', array());
     $types = array();
     foreach (array_reverse((array) $form->getTypes()) as $type) {
         $types[] = $type->getName();
     }
     $view->set('types', $types);
 }
开发者ID:norwayapp,项目名称:Invest,代码行数:29,代码来源:FieldType.php

示例4: buildView

 /**
  * {@inheritdoc}
  */
 public function buildView(FormView $view, FormInterface $form)
 {
     $view->set('value', $form->getAttribute('value'))->set('checked', (bool) $form->getClientData());
     if ($view->hasParent()) {
         $view->set('full_name', $view->getParent()->get('full_name'));
     }
 }
开发者ID:artz20,项目名称:Tv-shows-zone,代码行数:10,代码来源:RadioType.php

示例5: getRoot

 private function getRoot(FormView $form)
 {
     while ($form->getParent() != null) {
         $form = $form->getParent();
     }
     return $form;
 }
开发者ID:rtznprmpftl,项目名称:Zikulacore,代码行数:7,代码来源:FieldErrors.php

示例6: lookupTemplate

 /**
  * Returns the name of the template to use to render the block
  *
  * @param FormView $view  The form view
  * @param string   $block The name of the block
  *
  * @return string|Boolean The template logical name or false when no template is found
  */
 protected function lookupTemplate(FormView $view, $block)
 {
     $file = $block . '.html.php';
     $id = $view->get('id');
     if (!isset($this->templates[$id][$block])) {
         $template = false;
         $themes = $view->hasParent() ? array() : $this->resources;
         if (isset($this->themes[$id])) {
             $themes = array_merge($themes, $this->themes[$id]);
         }
         for ($i = count($themes) - 1; $i >= 0; --$i) {
             if ($this->engine->exists($templateName = $themes[$i] . ':' . $file)) {
                 $template = $templateName;
                 break;
             }
         }
         if (false === $template && $view->hasParent()) {
             $template = $this->lookupTemplate($view->getParent(), $block);
         }
         $this->templates[$id][$block] = $template;
     }
     return $this->templates[$id][$block];
 }
开发者ID:robertowest,项目名称:CuteFlow-V4,代码行数:31,代码来源:FormHelper.php

示例7: getPassword

 /**
  * Get password.
  * TODO: 無理矢理パスワードを取得してる為、もうちょい考えてみる
  */
 public function getPassword(FormView $view)
 {
     $method = 'get' . ucfirst($view->get('name'));
     return $view->getParent()->get('value')->{$method}();
 }
开发者ID:ryster,项目名称:HaouFormBundle,代码行数:9,代码来源:FormExtension.php

示例8: buildView

 /**
  * {@inheritdoc}
  */
 public function buildView(FormView $view, FormInterface $form)
 {
     if ($view->hasParent()) {
         $view->set('full_name', $view->getParent()->get('full_name'));
     }
 }
开发者ID:nicodmf,项目名称:symfony,代码行数:9,代码来源:RadioType.php


注:本文中的Symfony\Component\Form\FormView::getParent方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。