小编Jos*_*hua的帖子

Symfony2:具有空值的实体表单字段

我有一个使用迄今为止伟大的字段类型的表单定义entity.使用选项query_builder我选择我的值并显示.

可悲的是,我需要显示一个null默认值,比如all(它是一个过滤器形式).我不喜欢choices选项,entity因为我有数据库值,FormType不应该查询数据库.

到目前为止,我的方法是实现一个自定义字段类型,它扩展entity并在列表顶部添加一个空条目.加载并使用字段类型,但遗憾的是不显示虚拟值.

字段定义:

$builder->add('machine', 'first_null_entity', [
    'label' => 'label.machine',
    'class' => Machine::ident(),
    'query_builder' => function (EntityRepository $repo)
    {
        return $repo->createQueryBuilder('m')
            ->where('m.mandator = :mandator')
            ->setParameter('mandator', $this->mandator)
            ->orderBy('m.name', 'ASC');
    }
]);
Run Code Online (Sandbox Code Playgroud)

表单类型定义:

class FirstNullEntityType extends AbstractType
{

    /**
     * @var unknown
     */
    private $doctrine;

    public function __construct(ContainerInterface $container)
    {
        $this->doctrine = $container->get('doctrine');
    }

    public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
        $resolver->setRequired('query_builder');
        $resolver->setRequired('class');
    }

    public function buildView(FormView $view, …
Run Code Online (Sandbox Code Playgroud)

php symfony doctrine-orm

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

在Doctrine实体上跟踪字段更改

我想跟踪对Doctrine Entity字段的更改.我使用Symfony 2.5.0和Doctrine 2.2.3.

到目前为止,我有一个EventSubscriber订阅preUpdate.在这里,我想创建一个新的Entity,它存储新旧值并保存对更新的Entity的引用.

问题是,我无法找到坚持这个新实体的方法.如果我persist()preUpdateflush()postUpdate,如果我只能改变一个实体的作品.如果更改了多个实体,则会收到更改集为空的错误.

我试着摆弄不同的事件,结果不同.空白页面,跟踪entites不会持久化等.

我认为这应该是一个常见的用例 - 但我找不到例子.

php entity-framework symfony doctrine-orm

6
推荐指数
1
解决办法
7236
查看次数

将多个不同的实体分配给 Doctrine 中的一个数组行

当我在 Doctrine 中执行这样的事情时:

$qb = $doctrine
  ->getRepository('EntityA')
  ->createQueryBuilder('a')
  ->addSelect('b')
  ->join('EntityB', 'b', 'WITH', 'a.b = b')
  ->getQuery()
  ->getResult()
Run Code Online (Sandbox Code Playgroud)

我得到一个看起来像这样的数组:

array(0 => EntityA,
      1 => EntityB,
      2 => EntityA,
      4 => EntityB)
Run Code Online (Sandbox Code Playgroud)

事实上,我得到了 2 个结果行,但是一个大小为 4 的数组。这使得迭代它以在模板中显示几乎是不可能的。

我想要这样的结果:

array(0 => array(EntityA, EntityB),
      1 => array(EntityA, EntityB))
Run Code Online (Sandbox Code Playgroud)

当然,我可以在EntityA该引用上创建映射EntityB。但即使有改变的装载行为的可能性LAZYEAGER等等,也可能是希望具有动态创建这种关系的可能性。

例如:

在包含大量实体的概览中,EAGER需要加载以防止过多的查询。但是当我只想显示一个实体并且不需要额外的数据时,延迟加载更可取。

php symfony doctrine-orm

5
推荐指数
1
解决办法
1351
查看次数

如何在Drupal 8中安装没有Composer的库

在drupal 8中,我遇到了需要由Composer安装库的模块。但是,我想知道是否可以跳过作曲家部分,而只需手动安装库。

我能做到吗?

(我从来没有让作曲家上班)

drupal-8 composer-php

5
推荐指数
1
解决办法
1102
查看次数

Symfony3中的未知"样式表"标记

我在Symfony 3和symphony 2.8中都尝试过使用AsseticBundle CSS和样式表,但我一直在收到错误...

意外的"stylesheets"标记(期望第8行附近定义的"block"标记的结束标记)在第8行的:: base.html.twig中.500内部服务器错误 - Twig_Error_Syntax

这就是我想要解决的问题---

    {% block stylesheets %}
{% stylesheets 'bundles/admin/css/*' filter='cssrewrite' %}
    <link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

我已经搜索了解决方案,并且发现它已从新版本中删除,因此如果从新版本中删除它,我该如何处理我的样式表?

html css symfony assetic

3
推荐指数
1
解决办法
4386
查看次数

突出显示HTML表格中没有行数的悬停行中的单元格

我在这里遇到了一个有趣的问题:

有一个桌子上有一些细胞,其中一些有排骨:

+----+----+----+----+
|    |    | c4 | cx |
|    | c2 +----+----+
|    |    | c5 | cx |
| c1 +----+----+----+
|    |    | c6 | cx |
|    | c3 +----+----+
|    |    | c7 | cx |
+----+----+---------+
Run Code Online (Sandbox Code Playgroud)

使用以下CSS我想只有单元格c4,c5,c6,c7以及行悬停时突出显示的相应cx单元格:

tr:hover td:not([rowspan]) {
    background: #F1F1F1;
}
Run Code Online (Sandbox Code Playgroud)

当c4 .. c7悬停时,它就像一个魅力 - 只有细胞本身及其相应的cx细胞才能获得新的背景颜色.

当c1到c3悬停时,行c4也会悬停 - 记住选择器时非常有意义.问题是我不希望它以这种方式表现,也不知道如何阻止它.

有任何想法吗?如果需要,我会提供一个小提琴.

css html-table hover

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