小编Rob*_*zzi的帖子

Symfony2 QueryBuilder加入ON和WITH区别

我是Symfony2的新手,我通过QueryBuilder和Doctrine 2成功构建了我的第一个连接.可能这是一个愚蠢的问题但是在线和Symfony2的方法中我都无法找到任何理解join子句之间的区别的东西"用"和"开".

例如,这是我的加入代码:

->leftJoin('EcommerceProductBundle:ProductData', 'pdata', 'WITH', 'prod.id = IDENTITY(pdata.product)')
Run Code Online (Sandbox Code Playgroud)

它工作正常,但如果我把ON而不是WITH我得到以下错误:

[语法错误]第0行,第200行:错误:预期的Doctrine\ORM\Query\Lexer :: T_WITH,得到'ON'

为什么?我在对象中看到T_ON和T_WITH都有join子句,但是它们的使用区别是什么?他们的用途是什么样的?

left-join query-builder symfony doctrine-orm

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

Symfony2 - form_start函数在树枝中自定义

形成帮手form_start,form_end在树枝上很有用:

{{ form_start(form) }}
{{ form_end(form) }}
Run Code Online (Sandbox Code Playgroud)

我可以自定义一些参数,如methodaction.但我需要自定义其他参数,例如class或添加form-enctype.

我可以做吗?我应该把它设置成FormType.php

从现在开始,我只是尝试将自定义值添加到twig函数中,如下所示:

{{ form_start(form, {'class': 'myclass', 'action': 'myaction'}) }}
// fields...
{{ form_end(form, {'render_rest': true}) }}
Run Code Online (Sandbox Code Playgroud)

但在这种情况下,例如,class没有出现.

forms symfony-forms symfony twig symfony-2.3

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

找不到PHP Tidy类,错误

我正在为修复html字符串编写一些代码.我读了一些很好的解决方案,它们与Tidy PHP类一起工作,但我遇到了一些麻烦.这篇文章写的是我想要的,但我需要安装/加载PHP Tidy类. 从截断的HTML字符串中关闭标记

我正在努力PHP 5.5.4.我尝试按照一些教程安装整洁但没有任何附加内容.当我调用整洁的类时$tidi = new \tidy();,NetBeans会向我推荐该类并单击它(Ctrl +单击)我看到它但刷新页面我得到了错误Class 'tidy' not found in ... /myfile.php line ...

我以相同的方式使用了类,$myVar = new \DomDocument();但它完美地运行.

检查Tidy扩展是否像下面一样加载,我得到"NOT LOADED".

echo extension_loaded('tidy') ? "LOADED" : "NOT LOADED";
Run Code Online (Sandbox Code Playgroud)

请问有人可以解释一下Tidy的工作原理以及如何设置它?我的Ubuntu的版本是13.10.

php tidy htmltidy php-ini

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

Bootstrap轮播数据 - 幻灯片链接问题

我搭起了自举旋转木马.幻灯片next和prev正常工作,但幻灯片的链接不一样.

下面是幻灯片链接的轮播示例:

<!-- Carousel -->
<div id="seriesCarousel" class="carousel slide">
 <div class="container">
  <div class="carousel-inner">
    <div class="item" data-id="2">
       <article>
       </article>
    </div>
    <div class="item" data-id="5">
       <article>
       </article>
    </div>
  </div>
 </div>
</div>

<!-- Slides' links -->
<div class="accordion-inner">
 <ul>
  <li data-target="#seriesCarousel" data-slide-to="2">
   <a href="javascript: void(0);"> name 1</a>
  </li>
  <li data-target="#seriesCarousel" data-slide-to="5">
   <a href="javascript: void(0);"> name 2</a>
  </li>
 </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

我想给一个特定号码的数据载玻片到标记为链接,然后,它应该指向到幻灯片编号(数据编号)目前进入数据载玻片到.

使用我开发的解决方案,它不起作用,链接指向carousel数组元素,而不指向它的data-id标记.例如,如果我有一个data-slide-id数字1,它指向轮播数组的第一个元素.

有一种方法可以将链接指向特定的幻灯片吗?

jquery twitter-bootstrap twitter-bootstrap-3

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

Symfony2 和 MVC - 扩展控制器是一个好的实践吗?

我有一个简单但也许愚蠢的问题。

使用 Symfony2 PHP 框架,我经常扩展控制器,如下所示(当然这取决于工作类型):

    class MainController extends Controller{
        private $locale = array();

        protected function Locale() {
        $em = $this->getDoctrine()
            ->getManager();

                $this->locale = $em->getRepository('CommonLanguageBundle:Language')
            ->findBy(
                array('code' => $this->getRequest()
                    ->getLocale()
                )
            );
//      \Doctrine\Common\Util\Debug::dump($this->locale);
        return $this->locale[0];
    }
     //..
    }
    class StoreController extends MainController{
     function a_method() {
       $data = $this->Locale()->getId();
       //...
      }
    }
    class DefaultController extends StoreController {
     $data = $this->Locale()->getId();
     //...
    }
Run Code Online (Sandbox Code Playgroud)

这是一个好的做法吗?

在网上冲浪我发现了很多文章,但对我来说仍然不太清楚。

最后,如果它在 Symfony2 中运行良好,那么它对于 MVC 模式来说通常会好吗?

php model-view-controller controller symfony symfony-2.4

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

Symfony2获得服务或获得容器服务

我刚刚在Symfony2中实现了我的第一个服务.

我注意到,在控制器方法中,我是否这样调用服务

$this->container->get('main.service');
Run Code Online (Sandbox Code Playgroud)

或者

$this->get('main.service');
Run Code Online (Sandbox Code Playgroud)

没有区别.

我同样得到了这两项服务.

差异在哪里?

service web-services symfony symfony-2.4

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

Doctrine ORM 索引正确使用

在学说(Symfony)中,我有两个实体之间的 1-n 关系:经理拥有 n 个企业。

manager_id | business_id
1          | 1
1          | 2
1          | 3
Run Code Online (Sandbox Code Playgroud)

我在设置关系时没有问题,但是关于索引设置我不清楚

这是我的 Manager.orm.yml

Manager:
    //...
    indexes:
       business__index:
          columns: [business_id]

    //...
    manyToOne:
        business:
            targetEntity: Business
            inversedBy: managers
            cascade: ['persist', 'remove']
            orphanRemoval: true
            joinColumn:
                name: business_id
                referencedColumnName: id
                nullable: false
Run Code Online (Sandbox Code Playgroud)

这是我的 Business.orm.yml

 Business:
    //...
    oneToMany:
        managers:
            targetEntity: User\ManagerBundle\Entity\Manager
            mappedBy: pharmacyBusiness
            indexBy: business_id # is this correct?
Run Code Online (Sandbox Code Playgroud)

这种关系以及约束的行为都如我所愿。但是,索引已成功创建。

我唯一关心的是该条款indexBy几乎适用于我输入的任何值。我应该使用什么值?如您所见,我给出了business_id值(索引列),但我不知道是否使用business_idbusiness__index (索引名称)。它以任何一种方式工作,但我不明白发生了什么:(

orm doctrine relational-database symfony doctrine-orm

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