标签: formbuilder

如何将类属性设置为Symfony2表单输入

如何使用in 将HTML class属性设置为表单?<input>FormBuilderSymfony2

像这样的东西:

->add('birthdate', 'date',array(
      'input' => 'datetime',
      'widget' => 'single_text',
      'attr' => array(
          'class' => 'calendar'
      )
 ))

 {{ form_widget(form.birthdate) }}
Run Code Online (Sandbox Code Playgroud)

我希望此input字段的属性class设置为日历

php forms input formbuilder symfony

63
推荐指数
4
解决办法
12万
查看次数

Symfony2文件一步一步上传

我还在学习Symfony2并且不了解如何上传文件.

别担心,我已经检查了文档.这真的很好,但我的问题没有在任何教程中解释.

我正在寻找有关如何使用Symfony2上传文件但有所有人需要的所有东西的指导(例如扩展的约束,基于id和东西重命名文件,在db中存储路径等等)

我找到了很好的教程,试图混合它们但没有成功.每次出现不同的问题:文件在表单上的每次提交时重新上传(即使文件字段为空),guessExtension也不可能使用,tmp路径存储在数据库而不是正确的路径,文件没有移动,不可能在重命名中使用了id,因为id是自动递增的,因此尚未生成).

所以,我会提出一个"标准"实体,比方说:Photo.php

/**
 * Photo
 *
 * @ORM\Table(name="photo")
 * @ORM\Entity
 * @ORM\HasLifecycleCallbacks
 */
class Photo
{
    // Annotation for the id and auto increment etc
    private $id;

    /**
     * @var string
     * @Assert\File( maxSize = "3072k", mimeTypesMessage = "Please upload a valid Image")
     * @ORM\Column(name="image", type="string", length=245, nullable=false)
     */
    private $image

    private $title

    private $description

    // all the function get, set for the 4 previous variables
}
Run Code Online (Sandbox Code Playgroud)

和控制器:

public function addPhotoAction()
{
    $add_photo = new …
Run Code Online (Sandbox Code Playgroud)

upload file formbuilder symfony doctrine-orm

55
推荐指数
3
解决办法
9万
查看次数

fields_for表单构建器对象为nil

有没有办法访问嵌套的form_bulder.object?

## controller
@project = Project.new
@project.tasks.build

form_for(@project) do |f|
  f.object.nil? ## returns false

  fields_for :tasks do |builder|
    builder.object.nil? ## returns true
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails formbuilder

36
推荐指数
2
解决办法
7004
查看次数

Symfony 2 - 如何将数据传递给formBuilder?

我在我的表单中使用实体选择列表.我只想使用特定的实体(例如:只有用户所属的组)因此,在控制器中,我正在获取这些组,并试图将它们传入formBuider.

控制器:

/.../
$groups = $em->getRepository('VendorMyBundle:Group')->getUserGroups($user);
$form = $this->createForm(new Message($groups), $message);
/.../
Run Code Online (Sandbox Code Playgroud)

所以现在怎么办?如何在formBuilder中使用它?如何更改此行以使用传递的组数组?

->add('group','entity',array('class' => 'Vendor\MyBundle\Entity\Group', 'label'=>'Group:'))
Run Code Online (Sandbox Code Playgroud)

或者以另一种方式:

class MessageType
{
/.../
  public function buildForm(FormBuilder $builder, array $options)
  {
    $builder
      ->add('group','entity',
        array(
          'class' => 'Vendor\MyBundle\Entity\Group',
          'property' => 'name',
          'query_builder' => function ($repository) {
            $qb = $repository->createQueryBuilder('group');
            $qb->add('where', 'group.administrator = :user');
            $qb->setParameter('user', $user->getId());
            return $qb;
          },
          'label' => 'Group'
        )
      )
      // Continue adding fields
    ;
  }
/.../
}
Run Code Online (Sandbox Code Playgroud)

那么如何让对象$ user在表单构建器中使用?($ user表示当前登录的用户)

php formbuilder symfony

36
推荐指数
3
解决办法
5万
查看次数

如何获取rails表单构建器为特定字段生成的HTML"name"属性?

当你有一个这样的表单域:

<%= f.text_field :last_name %>
Run Code Online (Sandbox Code Playgroud)

它将在HTML中生成:

<input id="person_last_name" name="person[last_name]" size="30" type="text" />
Run Code Online (Sandbox Code Playgroud)

我想知道是否有任何方法可以获得将生成的name属性(在本例中为"person [last_name]").

想要得到这似乎有点奇怪,但我有理由!我也不能费心去做一个冗长的解释.

forms ruby-on-rails form-helpers formbuilder

33
推荐指数
2
解决办法
9688
查看次数

如何使用messages.en.yml翻译symfony2表单中的标签?

我试图让表单字段的翻译工作.我有messages.en.yml我的Bundle的Ressource文件夹.

test: it works
form:
    description: Add a description.
Run Code Online (Sandbox Code Playgroud)

我想构建一个表单EntityType,相应地转换表单字段的标签.

$builder->add(
    'description',
    null,
    array('label' => 'form.description', 'required' => false)
);
Run Code Online (Sandbox Code Playgroud)

然而,只显示了文字字符串'form.description',而不是预期的翻译Add a description.

messages.en.yml我可以调用正确加载翻译服务

var_dump($this->get('translator')->trans('test'));

在控制器中获取翻译结果.

当我想将字符串'form.description'视为应翻译的内容时,我错过了什么?

我想我无论如何都必须在它们上调用trans功能,但是如何自动完成它呢?

php forms translation formbuilder symfony

25
推荐指数
3
解决办法
4万
查看次数

Rails 4表单构建器,全面支持Twitter Bootstrap 3

是否有任何Rails 4兼容的表单构建器gem可以为Twitter Bootstrap 3.0.0表单提供全面的支持?

这是我认为"全面"支持的基准:

  • 支持所有3种布局(基本,水平,内联)
  • 支持基本输入类型(输入,文本区域,选择等)
  • 支持堆叠和内联复选框/单选按钮
  • 支持所有输入状态(焦点,禁用,验证)
  • 支持帮助文本/错误消息
  • 支持input-append/prepend(现在在TWBS3中称为输入组).
  • 支持处理Rails的特定表单'元素',例如date_select(内联选择框)

有关TWBS3表单的详细信息,请参阅TWBS3 文档WIP github问题.

我已经看过simple_formtwitter_bootstrap_form_for,虽然两者都取得了进展,但目前似乎都没有提供足够的解决方案.

简单的形式

看起来有一个基本布局的解决方案,但是由于TWBS3需要额外的网格标记,我目前无法看到水平形式.

https://github.com/plataformatec/simple_form/pull/864 https://github.com/plataformatec/simple_form/issues/857

Twitter引导表单

这个拉取请求看起来很有希望,但我可以看到标记和正在使用的类中存在一些不准确之处.

https://github.com/stouset/twitter_bootstrap_form_for/pull/84

ruby-on-rails formbuilder twitter-bootstrap twitter-bootstrap-3

22
推荐指数
3
解决办法
6173
查看次数

Angular2 FormBuilder Validatiors:要求填充组中的至少一个字段

我有一个表格,我正在收集电话号码(手机,个人,其他).我需要至少填充输入.我正在尝试使用Angular2 FormBuilder.

经过大量研究后,我遇到了解决这个问题的问题.我知道我可以使用其他方法来做到这一点,但我想知道是否可以使用FormBuilder验证器.如果我添加"Validators.required",那么所有3个字段都是必需的.有什么建议或想法吗?

phone: this._fb.group(
                    {
                        other: [''],
                        personal: [''],
                        mobile: [''],
                    }
Run Code Online (Sandbox Code Playgroud)

根据"JB Nizet"的提示,这是我必须实现的工作:

我的组Validator(它仍然需要调整):

static phoneExists(group: FormGroup): { [key: string]: any } {

    if (null != group) {
        var other: AbstractControl = group.controls['other'];
        var mobile: AbstractControl = group.controls['mobile'];
        var personal: AbstractControl = group.controls['personal'];
        var data: Object = group.value;

        return (
            (other.valid && isEmptyInputValue(other.value))
            && (mobile.valid && isEmptyInputValue(mobile.value))
            && (personal.valid && isEmptyInputValue(personal.value))
            )
            ? { 'required': true }
            : null;
    }
}
Run Code Online (Sandbox Code Playgroud)

我的小组改变了:

phone: this._fb.group(
                    {
                        other: [''],
                        personal: …
Run Code Online (Sandbox Code Playgroud)

validation formbuilder angular

21
推荐指数
2
解决办法
1万
查看次数

Symfony2 - FormBuilder - 在字段和输入中添加一个类

我想在symfony2中为某些输入或标签字段添加一个类.

我可以在Twig中以我的形式做这样的事情:

<div class="row">
    {{ form_label(form.subject) }}
    {{ form_widget(form.subject, { 'attr': {'class': 'c4'} }) }}
</div>
Run Code Online (Sandbox Code Playgroud)

哪个工作正常.但我必须为每个表单设置模板.我必须将其分解为可能的最小输出水平.我其实想用:

 {{ form_widget(form) }}
Run Code Online (Sandbox Code Playgroud)

所以,我在想,我怎么能在某处为l添加一个css类:

class SystemNotificationType extends AbstractType {
    public function buildForm(FormBuilder $builder, array $options) {
        $builder    ->add('subject', 'text', array( 'label'  => 'Subject' ) )
–
Run Code Online (Sandbox Code Playgroud)

我认为这可能更有用,因为我只需要在一个地方进行更改.

那怎么可能这样做,或者我想错了路.

任何帮助都会很棒,

非常感谢,Philipp

css class input formbuilder symfony

19
推荐指数
3
解决办法
5万
查看次数

如何使用symfony2表单生成器呈现默认选中的复选框?

我没有找到任何简单的方法来完成,默认情况下只需检查一个复选框.那可不是那么难,所以我错过了什么?

checkbox formbuilder symfony

18
推荐指数
7
解决办法
6万
查看次数